More and more people are working with texts and documents in XML format. With the increasing popularity of XML, the number of XML editors is also increasing and it can be difficult to choose the editor that best suits a particular user or task. The aim of this Information Paper is to provide an introduction to different features XML editors can have and the extent to which these features are implemented in various editors. It also presents the result of an evaluation exercise where different user groups tried a number of the editors.
The paper is based on a study by Thijs van den Broek Benchmarking XML editors, undertaken in 2004. The study consisted of a literature search, surveys to identify user needs, current usage, existing editors, and (existing and desired) features of editors, as well as an evaluation exercise. For further details about the study, contact AHDS Literature, Languages and Linguistics.
The paper first outlines the different types of XML editors that are available and their main characteristics (Section 2). Thirty different features of XML editors that were identified as useful by the benchmarking exercise (van den Broek 2004) are then outlined (Section 3), followed by tables showing how these are implemented within different editors (Section 4). Finally, the twenty editors evaluated in the benchmarking exercise are presented, highlighting the editors which were preferred by four different types of users (Section 5).
There are four main types of XML editors:
Dedicated XML editors are software built solely for the purpose of encoding XML. The editor has functionality to make this process as easy as possible and does not usually offer functionality for other tasks. There are two types of dedicated XML editors.
This type of editor offers the user a code view of the XML only. The users have to work in the XML code self.
This type of editor offers the user some sort of 'WYSIWYG' ('what you see is what you get') view of the XML. The user can work a view which is similar like the one in a word-processor or a view that presents the XML tags as small icons. A small proportion of editors offer both types of views.
In addition to editors built for encoding XML, a number of text editors exist which have added functionality for XML encoding. These functions often include syntax highlighting, validation, and sometimes auto-completion of tags and attributes.
Word processors approach XML from a different angle. They provide the possibility of opening XML documents and working with them in a 'WYSIWYG' view that hides the XML code for the user. They can also be used to create a new document and save it as a valid XML file.
This section first introduces a number of features of XML editors that were identified as useful by various user groups consulted in the Benchmarking XML editors exercise which forms the basis for this paper. The numbers in brackets refer to the list at the end of the section where each feature is listed with a brief description. The features are also found in the following section, where each editor is evaluated with regard to the implementation of the features.
Different users have different needs and preferences when it comes to working with XML. Some prefer to work in the code itself (feature nr. 24), while others prefer to work in a view that shows the tags but in a graphical way (25) or in a view which does not show the tags at all (26). Some editors allow the user to work in a page preview (27). When working in the code itself, it is useful if the editor offers syntax highlighting (30).
An important feature in an XML editor is the possibility to validate the document (1) against a set of rules like a DTD, W3C Schema or Relax NG Schema (14). Some editors offer on-the-fly validation (2) which means that the editor always signals whether the file is valid or not. For users that have to work with invalid files it is important that it is possible to open and save invalid files (13). It is also useful if the editor can handle internal entities (declared in the document) as well as external entities (declared in a schema or specific entity file) (20).
Other specific encoding features that may be found in an XML editor are: a menu for adding elements and attributes to the document that are allowed at the cursor position (3) or auto-completion of tags when users start typing the name of an element or attribute (4). Some editors allow the user to cut-and-paste or drag-and-drop bits of the document based on XML structure itself (5) or change elements into another element (7). Another function that might be useful is the ability to create an element by selecting a bit of text and choosing the preferred element (6). To search on the XML structure itself some editors have implemented structure-aware XPath find-and-replace functions (10).
More general text encoding functions can be important for some users. Editors can support regular expressions (9), have spell-checkers with open wordlists (11) or allow the input and display of special characters (12). Some editors support operations like search and replace or validation on multiple files (21).
When working with XML it can be useful to see a view of the document structure that can be collapsed and expanded (8) or a preview of the encoded document based on an XSLT style sheet (23). To display previews the editor may have a built-in XSLT (17) and/or XSL-FO (18) processor to create alternative versions of the document based on a stylesheet.
For the more advanced users of XML technology it is important that the editor aides the creation of schemas (16) or stylesheets like XSLT or XSL-FO (19). Advanced users may also want to be able to create templates for use by novice users (22).
A useful feature for novice users is the availability of templates for specific schemas (15). By creating a new document from these templates the user can get the basic structure for a complex document, for instance a TEI or DocBook document.
Two features that might be important for some users are the availability of version control where it is possible to keep track on changes in documents (29) and the possibility to work with large (over 5MB) documents (28).
The following list presents thirty different features that were identified as useful by XML encoders consulted for the Benchmarking XML editors exercise (van den Broek, 2004). The features were used for evaluating different editors (see Section 4).
The editor has an option to check whether the document is valid, i.e. whether you have used the right elements in the correct place.
The editor continuously checks whether the right elements are being used. An indicator signals validity.
The editor provides a menu of elements and attributes which are allowed at that particular point in the text. This helps users to add only valid elements.
The editor provides a list of possible elements, attributes, or attribute values when the user begins typing the XML tag.
The editor allows moving, cutting and pasting of elements within the document based on the XML structure.
The editor allows a piece of selected text to be wrapped in element tags by selecting the text and choosing the element from a list.
The editor allows the replacement of an element by another permissible element.
The editor has a pane which allows the viewing of the overall document structure. The structure is hierarchically displayed and can be collapsed or expanded.
The editor allows regular expression operations on the text. These include match, search and replace.
The editor allows the searching and replacement of certain patterns of elements (based on the XPath language). An example search could be: Replace all the <b> tags that are within an <a> tag by a <c> tag.
The editor allows you to check the spelling in the document. It is possible to edit the wordlists of the spell checker (to, for example, add new words) and to use different languages within one document.
The editor can handle different writing systems based on the Unicode character set. The characters can be displayed within the editor and different writing systems can be used within one document.
It is possible to switch off the validation so that invalid files can be edited and saved without problems.
The editor supports XML documents based on different schema languages for describing the structure of the XML documents (e.g. DTD, W3C Schema, Relax NG, etc.).
The editor has built-in support for several XML standards for text encoding (e.g. DocBook, TEI, CALS, etc.).
The editor has support for creating and editing different schemas (e.g. DocBook, TEI, CALS, etc.).
The editor has a built-in XSLT processor to convert XML documents with XSLT stylesheets into other XML documents or XHTML.
The editor has a built-in XSL-FO processor to convert XML documents with XSL-FO stylesheets into PDF documents.
The editor has support for creating and editing XSLT and XSL-FO stylesheets.
The editor offers support for internal and/or external entities.
The editor can operate on several XML documents as a batch. Operations include validating documents, converting documents with XSLT, and multi-file regular expressions. It is not necessary to convert one document at a time.
The editor allows the creation of templates for new documents.
The editor can show a preview of the final formatted text (for instance a webpage) by making use of stylesheets.
The editor has a 'code view' where the user can work in the XML code itself (including comments, processing instruction, elements, attributes, entities, and content).
The editor has a 'tags on view' where the user can work in the content of the XML document but also sees the tags that are being used surrounding the content.
The editor has a 'normal view' where the user can work in the content of the XML document without seeing the tags that are used.
The editor has a 'page preview' where the user can work in the actual formatted text. The user works in the view which is used to publish the text.
The editor works quickly with large documents. It should open them quickly and also be able to do a quick regular expression-like search and replace operation.
The editor has built-in functionality to manage different versions of a document.
The editor uses syntax highlighting when working in the 'code view' mode.
The following tables show the results of an evaluation of twenty different editors. Table 1 is based on an assessment of the implementation of the features listed above, taking into account ease of use of the feature. The result of an evaluation of usability is presented in Table 2 while Table 3 presents the availability of support for the different editors. All evaluations are subjective assessments where availability and usability of each feature in each editor has been taken into account. A score of Very good (++), Good (+), Marginal (-) and Poor/not available (--) is assigned, as illustrated below.
For instance: for feature 11 ('spell-checker with open wordlists') an editor would be rated 'Very good' (++) if it had extra options like "import new languages", "add your own words", etc. An editor which has these features but where some users find them difficult to use would be rated 'Good' (+). An editor that only has a standard list of words that could not be extended would receive the score Marginal (-) while an editor without a spell checker would be rated Poor/not available (--).
FEATURES |
1. Validation of the XML file within the editor |
2. On-the-fly validation of XML documents |
3. Menu for adding allowed elements and attributes |
4. Auto-completion of elements, attributes and attr. values |
5. Operate on the XML structure |
6. Create elements by selecting text |
Authentic |
++ |
- - |
- |
- |
- |
- |
Cooktop |
+ |
- - |
- - |
- - |
- - |
- - |
Emacs |
++ |
++ |
+ |
+ |
- - |
- - |
Epic Editor |
+ |
- - |
++ |
- - |
++ |
- - |
Exchanger XML |
++ |
- - |
+ |
+ |
- |
++ |
jEdit |
- |
- |
- |
- |
- - |
- - |
Microsoft Office |
- - |
- - |
- - |
- - |
+ |
- - |
Morphon |
- |
- - |
+ |
- - |
++ |
- - |
NoteTab |
- - |
- - |
- - |
- - |
- - |
- - |
Open Office |
- - |
- - |
+ |
- - |
++ |
+ |
Oxygen |
+ |
- - |
- |
++ |
+ |
+ |
Serna 1.51 |
+ |
++ |
+ |
- - |
+ |
- - |
Serna 2.0b |
+ |
++ |
++ |
- - |
+ |
- - |
TextPad |
- - |
- - |
- - |
- - |
- - |
- - |
TurboXML |
- |
- - |
- |
- - |
- |
- - |
UltraEdit |
- |
- - |
- - |
- - |
- - |
- - |
VIM |
- |
- - |
- - |
- - |
- - |
- - |
Xmetal |
+ |
- - |
+ |
- - |
- |
- |
XML Mind |
+ |
- - |
+ |
- - |
+ |
- - |
XML Writer |
+ |
- - |
- - |
+ |
- - |
- |
FEATURES |
7. Change elements |
8. View document structure |
9. Text editing features |
10. Structure-aware (XPath) search and replace |
11. Spell-checker with open wordlists |
12. Multi-lingual text input and display (Unicode) |
Authentic |
+ |
|
|
|
+ |
- |
Cooktop |
|
+ |
+ |
|
- - |
- - |
Emacs |
|
|
++ |
|
+ |
+ |
Epic Editor |
+ |
++ |
+ |
|
++ |
+ |
Exchanger XML |
|
+ |
++ |
|
- - |
+ |
jEdit |
|
++ |
++ |
|
- |
- |
Microsoft Office |
|
|
|
|
++ |
- |
Morphon |
++ |
+ |
++ |
|
- |
- |
NoteTab |
|
|
+ |
|
+ |
- - |
Open Office |
+ |
|
++ |
|
+ |
++ |
Oxygen |
|
+ |
++ |
|
- |
+ |
Serna 1.51 |
|
|
|
|
+ |
++ |
Serna 2.0b |
+ |
|
|
|
+ |
++ |
TextPad |
|
|
++ |
|
++ |
- |
TurboXML |
|
+ |
|
|
- - |
- - |
UltraEdit |
|
|
++ |
|
++ |
- |
VIM |
|
|
|
|
- |
- |
Xmetal |
|
+ |
+ |
+ |
+ |
- |
XML Mind |
+ |
+ |
++ |
|
++ |
++ |
XML Writer |
|
+ |
+ |
|
- - |
- |
FEATURES |
13. Switching validation on and off |
14. Support for different schema languages |
15. Support for specific schemas |
16. Create and edit schemas |
17. Built-in XSLT processor |
18. Built-in XSL-FO processor |
Authentic |
+ |
+ |
++ |
|
+ |
+ |
Cooktop |
|
|
|
|
+ |
|
Emacs |
+ |
++ |
|
+ |
|
|
Epic Editor |
+ |
+ |
+ |
+ |
+ |
+ |
Exchanger XML |
+ |
++ |
+ |
+ |
++ |
+ |
jEdit |
+ |
|
|
|
|
|
Microsoft Office |
+ |
|
|
|
+ |
|
Morphon |
|
|
|
|
+ |
|
NoteTab |
|
|
|
|
|
|
Open Office |
|
|
|
|
+ |
+ |
Oxygen |
+ |
++ |
++ |
++ |
+ |
+ |
Serna 1.51 |
|
|
++ |
|
|
|
Serna 2.0b |
|
|
++ |
|
+ |
+ |
TextPad |
|
|
|
|
|
|
TurboXML |
|
|
|
+ |
+ |
|
UltraEdit |
|
|
|
|
|
|
VIM |
|
|
|
|
|
|
Xmetal |
|
|
|
|
|
|
XML Mind |
+ |
|
|
|
+ |
+ |
XML Writer |
|
|
|
|
+ |
|
FEATURES |
19. Create and edit XSLT and XSL-FO stylesheets |
20. Entity support |
21. Operations on multiple files |
22. Create templates for new documents |
23. Preview the formatted text |
24. Working in code view' |
Authentic |
|
+ |
|
+ |
+ |
|
Cooktop |
|
|
|
|
+ |
+ |
Emacs |
+ |
+ |
+ |
+ |
+ |
+ |
Epic Editor |
++ |
+ |
|
++ |
+ |
+ |
Exchanger XML |
|
+ |
+ |
++ |
|
++ |
jEdit |
|
+ |
|
|
|
+ |
Microsoft Office |
+ |
|
|
+ |
+ |
|
Morphon |
|
|
|
|
+ |
|
NoteTab |
|
|
|
|
|
|
Open Office |
|
|
|
++ |
|
|
Oxygen |
+ |
+ |
++ |
++ |
+ |
+ |
Serna 1.51 |
|
+ |
|
|
+ |
|
Serna 2.0b |
|
++ |
|
|
++ |
|
TextPad |
|
|
|
|
|
|
TurboXML |
|
|
|
|
+ |
|
UltraEdit |
|
|
|
|
|
|
VIM |
|
|
|
|
|
|
Xmetal |
|
|
|
+ |
|
+ |
XML Mind |
|
+ |
|
+ |
+ |
|
XML Writer |
|
|
|
|
+ |
+ |
FEATURES |
25. Working in tags on view' |
26. Working in normal view' |
27. Working in page preview' |
28. Working with large (over 5MB) documents |
29. Version control |
30. Syntax highlighting |
Authentic |
+ |
+ |
+ |
+ |
+ |
|
Cooktop |
|
|
|
|
|
+ |
Emacs |
|
|
|
++ |
|
++ |
Epic Editor |
++ |
++ |
+ |
|
+ |
+ |
Exchanger XML |
|
|
|
|
|
+ |
jEdit |
|
|
|
|
|
|
Microsoft Office |
|
|
|
|
+ |
|
Morphon |
+ |
+ |
|
|
|
+ |
NoteTab |
|
|
|
+ |
|
|
Open Office |
|
++ |
|
|
|
|
Oxygen |
|
|
|
|
|
++ |
Serna 1.51 |
+ |
+ |
|
|
|
|
Serna 2.0b |
+ |
+ |
|
|
|
|
TextPad |
|
|
|
+ |
|
|
TurboXML |
|
|
|
|
|
|
UltraEdit |
|
|
|
++ |
|
+ |
VIM |
|
|
|
+ |
|
+ |
Xmetal |
+ |
+ |
|
|
+ |
+ |
XML Mind |
|
+ |
|
|
|
|
XML Writer |
|
|
|
+ |
|
+ |
+ + | = Very good |
+ | = Good |
- | = Marginal |
- - | = Poor/not available |
USABILITY - NIELSEN HEURISTICS |
1. Visibility of system status |
2. Match between system and real world |
3. User control and freedom |
4. Consistency and standards |
5. Error prevention |
6. Recognition rather than recall |
Authentic |
+ |
+ |
+ |
+ |
- |
+ |
Cooktop |
+ |
+ |
+ |
+ |
+ |
- |
Emacs |
+ |
- |
+ |
- |
+ |
- |
Epic Editor |
+ |
+ |
+ |
+ |
+ |
+ |
Exchanger XML |
+ |
+ |
+ |
+ |
+ |
+ |
jEdit |
- |
- |
+ |
+ |
+ |
+ |
Microsoft Office |
++ |
++ |
++ |
++ |
- |
++ |
Morphon |
- |
+ |
+ |
+ |
- |
+ |
NoteTab |
+ |
+ |
+ |
+ |
+ |
+ |
Open Office |
+ |
++ |
++ |
++ |
+ |
++ |
Oxygen |
+ |
+ |
+ |
- |
+ |
+ |
Serna 1.51 |
+ |
+ |
+ |
+ |
- |
+ |
Serna 2.0b |
+ |
+ |
+ |
+ |
+ |
+ |
TextPad |
+ |
+ |
+ |
+ |
+ |
+ |
TurboXML |
- |
+ |
- |
- |
- - |
- |
UltraEdit |
+ |
- |
+ |
+ |
+ |
+ |
VIM |
- |
- |
+ |
- |
+ |
- |
Xmetal |
- |
+ |
+ |
+ |
+ |
+ |
XML Mind |
+ |
+ |
+ |
- |
- |
+ |
XML Writer |
+ |
+ |
+ |
+ |
+ |
+ |
OTHER USABILITY CRITERIA |
7. Flexibility and efficiency of use |
8. Aesthetic and minimalist design |
9. Help users recognize, diagnose, and recover from errors |
10. Help and documentation |
11. Editor reliability |
12. Editor recoverability |
13. Resource utilisation |
Authentic |
++ |
|
|
+ |
+ |
- - |
+ |
Cooktop |
+ |
+ |
|
|
- |
- - |
+ |
Emacs |
++ |
|
|
|
++ |
+ |
+ |
Epic Editor |
+ |
|
+ |
+ |
+ |
+ |
+ |
Exchanger XML |
+ |
+ |
|
+ |
+ |
- - |
- - |
jEdit |
+ |
+ |
|
|
+ |
+ |
- |
Microsoft Office |
+ |
++ |
|
+ |
+ |
+ |
+ |
Morphon |
+ |
+ |
|
+ |
- |
+ |
+ |
NoteTab |
|
+ |
+ |
+ |
+ |
- - |
+ |
Open Office |
++ |
++ |
+ |
+ |
++ |
++ |
+ |
Oxygen |
+ |
+ |
+ |
+ |
+ |
++ |
- |
Serna 1.51 |
|
+ |
+ |
|
+ |
- - |
- |
Serna 2.0b |
|
+ |
+ |
|
+ |
+ |
+ |
TextPad |
+ |
+ |
+ |
+ |
+ |
- - |
+ |
TurboXML |
|
|
|
+ |
- |
- - |
- - |
UltraEdit |
+ |
|
+ |
+ |
+ |
+ |
+ |
VIM |
++ |
+ |
+ |
|
+ |
++ |
++ |
Xmetal |
|
+ |
|
+ |
+ |
- - |
+ |
XML Mind |
|
+ |
|
+ |
+ |
- |
- |
XML Writer |
++ |
|
+ |
+ |
+ |
- |
+ |
+ + | = Very good |
+ | = Good |
- | = Marginal |
- - | = Poor/not available |
FEATURES |
Customise the editor for other users |
Customise the editor with restriction for the user |
Centralised customisation |
Different Operating Systems |
Open Source |
Easy to install |
Authentic |
++ |
- - |
- - |
- - |
- - |
+ |
Cooktop |
- - |
- - |
- - |
- - |
- - |
- |
Emacs |
++ |
- - |
- - |
++ |
++ |
+ |
Epic Editor |
- - |
- |
++ |
+ |
- - |
+ |
Exchanger XML |
- |
- - |
- - |
++ |
- - |
- |
jEdit |
+ |
- - |
- - |
++ |
++ |
- |
Microsoft Office |
+ |
+ |
- |
- - |
- - |
+ |
Morphon |
+ |
- - |
- - |
++ |
- - |
+ |
NoteTab |
- - |
- - |
- - |
- - |
- - |
+ |
Open Office |
++ |
+ |
- - |
++ |
+ |
+ |
Oxygen |
- - |
- - |
- - |
++ |
- - |
+ |
Serna 1.51 |
- |
- - |
- - |
++ |
- - |
+ |
Serna 2.0b |
+ |
- - |
- - |
++ |
- - |
+ |
TextPad |
- |
- - |
- - |
- - |
- - |
+ |
TurboXML |
- - |
- - |
- - |
++ |
- - |
- |
UltraEdit |
+ |
- - |
+ |
- - |
- - |
+ |
VIM |
++ |
- - |
+ |
++ |
++ |
+ |
Xmetal |
++ |
++ |
- - |
- - |
- - |
+ |
XML Mind |
- |
+ |
- - |
+ |
- - |
+ |
XML Writer |
- |
- - |
- - |
- - |
- - |
+ |
+ + | = Very good |
+ | = Good |
- | = Marginal |
- - | = Poor/not available |
This section provides a brief description of the evaluated editors with information about price (spring 2004), supported schema languages, supported operating systems, etc. Among the evaluated editors, some were selected for more extensive user testing/evaluation based on their scores in the primary evaluation combined with a user needs analysis (van den Broek, 2004). These editors have been described further in the list below.
Developer: | Altova |
Editor: | Authentic |
Version: | 2004 |
Open Source: | No |
Operating Systems: | Windows |
Schema Languages: | W3C Schema / DTD |
Cost: | Free (without style sheet creator) |
Website: | http://www.altova.com/authentic |
Authentic is a free document editor from the makers of the very popular data editor XMLSpy. It is a WYSIWYG editor only and therefore it is not possible to work in the code itself. A great advantage of the editor is the templates of different document types which will let you create documents based on a number of schemas: Dita, NewsML, DocBook, and several TEI schemas including TEI lite.
Documents created with these templates already have some basic content and provide some textual buttons to add other content. However, to add other tags to the document the user needs a fair amount of knowledge of the DTD/W3C Schema since elements have to be added from a pane with all the available tags. A further problem is that it is hard to determine the exact spot where the tag has to be added since there is no tree view of the document. It is not possible to create and edit your templates within Authentic but this can be done through another program, StyleVision , which has to be purchased from the Altova company
Developer: | Victor Pavlov |
Editor: | Cooktop |
Version: | 2.5 |
Open Source: | No |
Operating Systems: | Windows |
Schema Languages: | W3C Schema / DTD |
Cost: | Free |
Website: | http://www.xmlcooktop.com/ |
Developer: | GNU Emacs, Sebastian Rahtz, Christian Wittern |
Editor: | Emacs |
Version: | TEI |
Open Source: | Yes |
Operating Systems: | All |
Schema Languages: | W3C Schema / DTD / Relax NG |
Cost: | Free |
Website: | http://www.tei-c.org/Software/tei-emacs/ |
Emacs differs from other editors in the evaluation since it has an interface with which most users will be unfamiliar. Where most of the evaluated editors have interfaces derived from Windows or Macintosh programs, Emacs has a GNU interface. This means that it uses different keyboard shortcuts and some features have to operated from a command line instead of with buttons. Therefore, the learning curve can be quite steep for new users. Emacs is a programmable text editor and only provides a code view which means that XML files are edited within the code instead of a WYSIWYG layer. The editor has some nice features like auto-completion of tags (albeit with a keyboard shortcut), on-the-fly schema validation and a useful search function that highlights every word that matches the search query. The functionality of this opensource editor can be extended with numerous Elisp plug-ins.
Sebastian Rahtz has modified an implementation of Emacs which allows users to create TEI documents from scratch. TEI-Emacs comes bundled with all the necessary programs and stylesheets so that, among many other things, the TEI XML documents can be converted into HTML and PDF documents.
Developer: | Arbortext |
Editor: | Epic Editor |
Version: | 5 |
Open Source: | No |
Operating Systems: | Windows / Sun Solaris |
Schema Languages: | W3C Schema / DTD |
Cost: | $695,- |
Website: | http://www.arbortext.com/products/epic_editor.htm |
Epic Editor is the most expensive editor on the list. It has both a code view and a WYSIWYG view and also allows users to work in a view that shows the tag names as small icons. Therefore the structure of the document remains clear even when users are not working in the code view. It also provides a tree view of the document.
Advantages of the software are that it provides conversion into HTML and PDF documents and that it is possible to work in the code of the file. It can be installed as a client-server architecture which may be one explanation to the high price.
Developer: | Cladonia |
Editor: | Exchanger XML |
Version: | 2 |
Open Source: | No |
Operating Systems: | All |
Schema Languages: | W3C Schema / DTD / Relax NG |
Cost: | $98,- |
Website: | http://www.exchangerxml.com/ |
Exchanger XML is a code view editor which is very easy to use. The auto-completion of tags is very useful since it automatically pops up a list of possible tags on that position when editing a document. This list gets shorter when you type more of the tag. When a tag is chosen it automatically adds a closing tag.
The editor provides a useful menu for converting files into HTML or PDF and also provides templates for popular documents like DocBook. Unfortunately there is no template for TEI documents. Other advantages include the menu for adding symbols and the XPath query option. With this option it is possible to perform structure-aware searches on the document.
The biggest disadvantage of the editor is that it is a Java-based program. This means that it can be used on most of the platforms but at a performance cost.
Developer: | jEdit SourceForge project |
Editor: | jEtit |
Version: | 4.1 |
Open Source: | Yes |
Operating Systems: | Windows / Mac / Linux |
Schema Languages: | DTD |
Cost: | Free |
Website: | http://www.jedit.org/ |
Developer: | Microsoft |
Editor: | Microsoft Office |
Version: | 2003 |
Open Source: | No |
Operating Systems: | Windows |
Schema Languages: | W3C Schema / DTD / XDR |
Cost: | $199,95 |
Website: | http://office.microsoft.com/ |
Developer: | Morphon Technologies |
Editor: | Morphon |
Version: | 3.1.4 |
Open Source: | No |
Operating Systems: | All |
Schema Languages: | W3C Schema / DTD |
Cost: | Free |
Website: | http://www.morphon.com/ |
Developer: | Fookes Software |
Editor: | NoteTab |
Version: | 4.95 |
Open Source: | No |
Operating Systems: | Windows |
Schema Languages: | None |
Cost: | $19,95 |
Website: | http://www.notetab.com/ |
Developer: | OpenOffice.org, Sebastian Rahtz |
Editor: | OpenOffice |
Version: | 1.1.2 |
Open Source: | Yes |
Operating Systems: | All |
Schema Languages: | DTD |
Cost: | Free |
Website: | http://www.openoffice.org/ |
Open Office is in fact a suite of office tools, where the word processor stores the documents in XML. It is, thus, possible to create documents with simple document structures (different headers, paragraphs, bulleted lists, emphasis, etc.) based on your own schema . Sebastian Rahtz has created a plug-in for the creation of TEI documents in Open Office . This allows users to work in what appears to be a normal word processor document while, in the background, the document is stored as valid, if very basic, TEI. This editor can only be used for simple document structures and it is not possible to work in the code itself. If this is all the user needs then this editor is by far the most user-friendly.
Developer: | SyncRO Soft |
Editor: | Oxygen |
Version: | 4.1 |
Open Source: | No |
Operating Systems: | All |
Schema Languages: | W3C Schema / DTD /Relax NG |
Cost: | $96,- |
Website: | http://www.oxygenxml.com/ |
Oxygen is quite similar to Exchanger XML . The interface looks better because of the use of icons for a lot of features but the editing of documents is more or less the same. An advantage over Exchanger is that Oxygen provides more templates (including TEI) and that the tree view is visible when editing a document. It also has a spell checker. The menu for conversion into HTML or PDF is easy to use and the only disadvantage compared to Exchanger is that it has no menu to add symbols to the document.
As with Echanger XML the main disadvantage is the fact that Oxygen is a Java-based program and therefore can be quite slow.
Developer: | Syntext |
Editor: | Syntext Serna |
Version: | 1.51 |
Open Source: | No |
Operating Systems: | All |
Schema Languages: | W3C Schema / DTD |
Cost: | $269,- / $45,- Academic version |
Website: | http://www.syntext.com/ |
Developer: | Syntext |
Editor: | Syntext Serna |
Version: | 2.0b |
Open Source: | No |
Operating Systems: | All |
Schema Languages: | W3C Schema / DTD |
Cost: | $299,- / $45,- Academic version |
Website: | http://www.syntext.com/ |
Syntext Serna claims to be a true WYSIWYG editor but differs significantly from other WYSIWIG editors, such as XMetal. It is possible to switch to a code view of the editor but this means that the complete interface of the editor changes which is quite confusing. Tags are added to the document with buttons inside the document. Elements are added from a context sensitive list. There are no buttons for adding common items like paragraphs or bulleted lists.
The users that evaluated this editor listed it as the least user-friendly editor, primarily because the editing process is different from many other programs which can make it difficult to master.
Developer: | Helios Software Solutions |
Editor: | TextPad |
Version: | 4.7.2 |
Open Source: | No |
Operating Systems: | Windows |
Schema Languages: | None |
Cost: | $29,- |
Website: | http://www.textpad.com/ |
Developer: | TIBCO Software |
Editor: | TurboXML |
Version: | 2.4.1 |
Open Source: | No |
Operating Systems: | All |
Schema Languages: | W3C Schema / DTD |
Cost: | $269,- |
Website: | http://www.tibco.com/ |
Developer: | IDM Computer Solutions |
Editor: | UltraEdit |
Version: | 10.2 |
Open Source: | No |
Operating Systems: | Windows |
Schema Languages: | None |
Cost: | $35,- |
Website: | https://www.ultraedit.com/ |
Developer: | VIM SourceForge project |
Editor: | VIM |
Version: | 6.3 |
Open Source: | Yes |
Operating Systems: | All |
Schema Languages: | None |
Cost: | Free |
Website: | http://www.vim.org/ |
Developer: | Blast Radius |
Editor: | XMetal |
Version: | 4.5 |
Open Source: | No |
Operating Systems: | Windows |
Schema Languages: | W3c Schema / DTD |
Cost: | $495,- |
Website: | http://www.xmetal.com/ |
XMetal is the only editor in the study which acts in the way that most users expected. It has a WYSIWYG view and a code view which are both very easy to work in. The WYSIWYG view offers the user a look and feel that is close near that of a normal word processor. It has buttons to add new paragraphs or bulleted lists and edits in a manner familiar to users of most word processors, for instance, MS Word . The editor has a menu for converting documents into HTML and PDF and it is possible to see a tree view of the document.
The main disadvantage of XMetal is that the only templates available are ones created for XMetal . There are no templates for DocBook or TEI. It is, however, fairly easy to create new templates. XMetal can create an implementation based on, for example, a DTD. A further disadvantage of this editor is its price. XMetal is the second most expensive product evaluated.
Developer: | Pixware |
Editor: | XML Mind |
Version: | 2.6 |
Open Source: | No |
Operating Systems: | Windows / Mac / Linux |
Schema Languages: | W3C Schema / DTD |
Cost: | $220,- |
Website: | http://www.xmlmind.com/ |
Developer: | Wattle Software |
Editor: | XML Writer |
Version: | 2.4 |
Open Source: | No |
Operating Systems: | Windows |
Schema Languages: | W3C Schema / DTD / XML Reduced |
Cost: | $99,- |
Website: | http://www.xmlwriter.net/ |
The listed editors were evaluated with regard to the range of features implemented (see table) and also against criteria of usability and support. This was then compared to a list of requirements for four kinds of users. Three or four editors per group were selected and then evaluated by users from that group. Presentation of the user groups and the result of their evaluation can be found below.
This group consists of users that use the whole spectrum of XML technology. They write XML documents, stylesheets to publish their XML in formats like HTML or PDF, and schemas for new types of XML documents. This group are advanced users of XML and therefore prefer to work in the XML code itself.
The editors that were selected for and evaluated by this group were :
After performing a set of tasks with these editors the users picked Oxygen as the most suitable for their group. Emacs was also quite popular but users could be biased since they already used this editor most frequently and therefore had been through the steep learning curve of working with this type of editor.
This group prefers to work in the XML itself because of the extensive and complex encoding their work requires. They do not need functionality to create stylesheets and schemas.
The editors that were selected for evaluation by this group were the following:
The users picked Exchanger XML as the most suitable for their group, closely followed by Oxygen .
This group is familiar with the XML code but rather work in a WYSIWYG view which allows them to encode the document without looking at the XML code. However, sometimes they have to edit invalid documents or encode more complex structures that forces them to work in the XML code.
The users tried the following editors:
The Intermediate users picked XMetal as the most suitable for their group. This was however closely followed by Oxygen (which is a code-view-only editor) and Epic Editor. The users found Syntext Serna very difficult and confusing to use.
WYSIWYG users are defined as users who need to write short documents, minutes, or reports in XML. Since they are used to working with word-processors, they prefer an editor that has close resemblance with word-processor.
The editors that were selected for this group were:
After performing a set of tasks with these editors the WYSIWYG users picked XMetal as the most suitable for their group. This was followed by OpenOffice , and the others were not very popular.
Which editor you choose to use depends on a number of factors. Hopefully the overview of common features of XML editors and the presentations of the editors provided in this Information Paper should make the process of choosing easier. The user evaluation has identified the editors that were preferred by the sample of selected groups of users, and this may be a useful starting point for choosing an editor.