Section 2.2: Authoring and Editing tools

Authoring and editing tools form the largest single group of SGML-aware products. ISO Technical Report 10037 — Guidelines for SGML Syntax-Directed Editing Systems (see Annex A) has been written specifically to assist prospective purchasers of authoring software, and the authors of this report would recommend this TR as a useful background document (see Annex A).

This section is further divided into two sub-sections covering (A) specific SGML document editors, and (B) SGML-aware `add-ons' to existing word-processing packages and page-composition systems. All the early products were developed specifically as SGML-aware editors. They would only edit SGML documents. These dedicated systems are intended to be able to handle any DTD (some are better than others!) and any of the features of SGML (for example, Marked Sections and Shortrefs) which make it so powerful. As SGML has become important in more and more industries and has been seen to be expanding into more general areas of document production than was originally expected, some of the major word-processor and publishing products have added or are adding SGML-aware facilities on to their existing products. These products have the benefit of being extensively used in the general word-processing or publishing markets and so may have more highly developed user interfaces and user facilities, but lack the full awareness and requirements of true SGML systems. This is because without exception they convert the SGML into their own internal format, and, on export, are unable to retain (or regain) the full set of SGML features used in the original document.

In addition to the decision about SGML-specific or SGML- conversion, organisations must consider a range of other points when deciding which editor / authoring system to use. These are:

  1. To what extent may the SGML declaration be examined, or edited? May the user supply their own SGML declaration, and so vary the SGML syntax and character sets used? [Note: This will become more significant as systems become available that allow 7, 8 and 32-bit characters based on ISO 10646 / Unicode to be used.]
  2. Are there sample DTDs supplied, and how easy is it for the users to use their own DTDs?
  3. How easy is it to include entity sets, and are sample entity sets supplied or incorporated into the product?
  4. What optional features are provided? Some `optional' features would be considered essential in all editors. However, many organisations believe that they will not require some of the optional features initially, but when fully converted to using SGML find that they do require them.
  5. Does the system assist in the preparation of the SGML Declaration?, and of the DTDs? And the related question, are DTDs `compiled' and stored in a binary form?, so speeding up the initialisation of a new document and also ensuring that authors do not amend the DTD.
  6. How are the documents stored — as SGML files, or in some internal format? If stored in an internal format, what (if any) loss of information is there when converting?, and can all legal SGML constructs be handled both when reading in and when writing out?
  7. Can the editor display in a variety of forms — with the tags hidden, with the tags displayed but not editable, with the tags and attributes displayed and editable? The related questions, to what extent does the editor allow the user to control the layout on screen?, and (if printing is available) on the printer?
  8. Are filters provided to convert from other (non-SGML) word- processing and authoring products?
  9. How are graphics handled? Can they be displayed in-line, or just referenced?
  10. Finally, how is the validation of the created or edited document done? It may be dynamically validated as the document is created, by a specific user-action during or at the end of editing, or by the calling of a separate validation process (a `parser') on the created file.