Section 2.2(A): SGML-specific editing systems


Product:
Author/Editor 3.1
Associated Products:
RulesBuilder, ApplicationBuilder, HoTMetaL (see below)
Developer:
Softquad (Canada)
UK Supplier(s):
Datazone; Graphnet; Database Publishing Systems
Price:
Author/Editor: Windows and Mac: $995, Unix: $1995
RulesBuilder: Windows and Mac: $995, Unix: $1995
ApplicationBuilder: All platforms: $12,000
(Bulk arrangements are possible)
Platforms:
MS-Windows, Macintosh, most Unix systems
Description:
Author/Editor is a multi-platform SGML word-processor. It includes a WYSIWYG table editor, structured outliner, and a front-end tool for creating and validating databases. Author/Editor has the usual features one would expect from an advanced word-processor — spell-checking, user dictionary, markup-sensitive search and replace, on-line help, and keyboard short-cuts. Elements and entities are represented as icons and are easily inserted so that SGML markup never needs to be typed. There is automatic rules checking. This ensures the markup remains correct during editing. The document can be viewed and edited with or without tags being displayed. The document can be formatted on screen by associating elements with typographical features such as typeface and colour. Documents can be proof- printed, with or without SGML markup. [Note: Author/Editor styles can be shared with DynaText styles using a `Styles Exchange' package.]

RulesBuilder is a batch DTD processor that will validate and compile DTDs which may immediately be used with Author/Editor. RulesBuilder allows you to use new DTDs with Author/Editor or modify existing ones. DTDs may be compiled with an SGML declaration of your choice. The compilation process reports ambiguous content models, warns about elements not used in any content model, generates outline of tag descriptions file, and allows you to compile tag descriptions with the DTD.

ApplicationBuilder is a development environment for the customization of Author/Editor. It provides an object-orientated scripting language to allow Author/Editor to be integrated into other applications, for example, into database and document management systems. ApplicationBuilder provides the ability to add new menus and capabilities to existing menus, to create and change quick keystroke commands. It allows Author/Editor to communicate with the operating system and with outside applications and commands. It can run customized scripts on start-up, and can perform customized transformations on documents.

Assessment:
SoftQuad's Author/Editor is probably the most widely used SGML editing tool.

It was the first SGML editor to work in a graphic mode, where start and end tags are represented on screen by icons and can be viewed or hidden by choice. It presents SGML documents in a semi-WYSIWYG manner, by allowing screen formatting characteristics (font, colour, indents, etc.) to be associated with SGML elements.

Version 3.1 offers several enhancements over previous versions (1.x and 2.x), including :

Author/Editor works in a multi-windowing environment under MS Windows 3.1, X-Windows or one of its derivatives (Motif, OpenLook), and on the Macintosh. For each document a "structure window" can also be opened: this gives a view of the document by summarising the various structural levels, and can be used for positioning the cursor in the main document and for selecting elements (a sort of Dynamic "Table of Contents"). A "context window" can also be opened, showing a list of open elements in sequence from the start of the document together with the values of their attributes.

The user initiates actions with the aid of a mouse and pull- down menus, and most options can also be entered directly from the keyboard. Text is entered from the keyboard, but the SGML elements are created by selection from a contextual list. If an element is inserted which has at least one required attribute then the attribute edit window is automatically opened.

Author/Editor does not work directly on an SGML file. It uses a proprietary binary encoding for efficiency purposes. To produce an ASCII SGML file it is necessary to export the binary file from the editor via a menu option. Before exporting, Author/Editor warns the user to validate the file, though it will allow export without validation. Validation is necesary because, even though all editing actions are carried out under strict parser control, it is still possible to create an SGML document which is invalid because it is incomplete. This is a situation common to all SGML editors. For example, although the attribute edit window is opened automatically for elements which have required attributes, it is possible to cancel this window and insert the element without providing values for the required attributes. Validation is carried out by selecting an option from a menu, which causes the inbuilt parser to validate the file. Any errors or warnings are notified to the user, with the cursor being placed at the point of the error.

Tables can be created and edited in either tagged or WYSIWYG mode. In WYSIWYG mode the inbuilt table editor allows creation of medium-complexity tables which conform to SoftQuad's canonical table structure. Author/Editor provides a table DTD fragment for this defined structure, which can be included directly into user DTDs. Alternatively, the user can define any table DTD fragment, though to use the graphical table editor it is necessary to be able to perform a one-to-one mapping of user element and attribute names to elements and attributes defined in the canonical table structure, which in practice can be difficult to implement.

Author/Editor provides no support for WYSIWYG creation of mathematical equations.

Author/Editor uses a compiled version of a DTD (a Rules file) to provide structure control within the editor. A Rules file is produced by compiling a DTD with the RulesBuilder product. Author/Editor is provided with pre- compiled Rules files for several common DTDs, but in order to use Author/Editor with any other DTD then it is also necessary to purchase RulesBuilder.

All of the features in Author/Editor are implemented as functions in Scheme, a derivative of Lisp. A Scheme interpreter is provided in the ApplicationBuilder product, allowing user access to all of the underlying functionality of Author/Editor. This allows the user to totally customise the user interface, to implement new functions not available in the basic Author/Editor product, and to integrate Author/Editor with other applications, though at some considerable extra cost.

The quality of the product documentation is very good, with tutorials and worked examples being provided to illustrate all of the major features of the product, though the information on how to initially set up the product (how to map public entity names to system file names, how to set up the various paths, error messages from RulesBuilder, etc.) could be explained more clearly.

Author/Editor is generally a very competent SGML editor, able to cater for probably 90% of anything an average author of an SGML document may wish to do, excluding creating equations. The remaining 10% of functionality can probably be implemented using the ApplicationBuilder add-on, though the pricing of this may be a disincentive. A major application area for which it would not be suitable are those documents which contain mathematical equations, as it does not include an equation editor. For applications which require this then the user should investigate Arbortext's ADEPT Editor or Grif S.A.'s Grif SGML Editor, both of which contain WYSISYG equation editors.

Also, it is not the ideal tool to use when the documents to be imported may be invalid SGML documents, for example as is often the case with documents produced as the result of an automated retroconversion process. Author/Editor cannot import invalid SGML documents. If it is attempted to import such a document then Author/Editor will halt at the first error with an error message. The error must be fixed and the import attempt repeated. For documents which may potentially contain many errors this can be very time consuming. It would be better to first parse the documents with an external parser and correct any errors before attempting to import the documents. This is in contrast with some SGML editors, which will allow an invalid document to be imported and the errors corrected from within the editor. For example, the Arbortext ADEPT Editor allows this.

The upper eight bit characters (from 128 to 255) may be entered directly via the keyboard, and may be exported into SGML either as the eight bit character or as a character reference, but not as an entity reference. For example, an eacute may be entered by keying ALT 0233 and exported either as the eight bit character with dec code 233 or as a character reference é but not as é

It should also be noted that, whilst Author/Editor supports OMITTAG and SHORTTAG, it does not support SHORTREF at all.


Product:
ADEPT•Editor
Associated Products:
ADEPT•Publisher (below), ADEPT•PowerPaste (see above)
Developer:
ArborText (USA)
UK Supplier(s):
Texcel (UK) Ltd
Price:
ADEPT•Editor: Windows 3.1: £1,080, Unix: £2,350
ADEPT•Publisher: Windows and Unix: £3,950
Document Architect: Windows and Unix: £3,950
Platforms:
Unix, MS-Windows 3.1 (June 1994)
Description:
ADEPT•Editor enables documents to be created, edited and updated in native SGML. The comprehensive software is ideal for organisations that have large volumes of textual information, a substantial writing community, document data with a long life cycle, and a need to support many derivative products. The software is designed for people concerned with content — not final production. The keyboard and menus are customisable. Structured editing tools include a powerful spelling checker, extensive thesaurus, on-line dictionary, WYSIWYG table editor, WYSIWYG equation editor and a DTD editor. Tags may be revealed or hidden. The software is supplied with a DTD based on ISO 12083. In addition, the software provides tools that enable loading of a user-written DTD, which can be later customized.

ADEPT•Publisher is a CALS-compliant authoring-editing- composition system to create automated technical documentation systems. Because ADEPT•Publisher creates and stores information in 100% SGML, it is easy to access, update, and reuse information.

Format possibilities are virtually limitless. ADEPT•Publisher can apply alternate layouts to the same text without modifying or re-keying the document content. Authors use ADEPT•Publisher to create books, manuals, and other large and complex documents — seamlessly integrating text, graphics, equations, and tables.

ADEPT•Publisherprovides a programming language so that every application can be customized to an organization's specific workflow needs. Keyboard mappings and menus are easily tailored to each user's requirements.

Assessment:
ADEPT•Editor is a standalone SGML editor which runs under both X-Windows on Unix systems and Microsoft Windows on a PC. The editor provides a screen-formatted representation of the SGML file, and the user can choose to hide or display the SGML tags by a menu choice. The screen formatting is specified by a FOSI (Formatting Output Specification Instance). It includes WYSIWYG table and equation editors, and it has a powerful built-in programming language (based upon C shell) for creating customised applications. It also has a documented API (Application Programming Interface), which makes it relatively easy to integrate into larger systems environments.

ADEPT•Editor is configurable to operate with any valid SGML DTD. However, it does not work directly with the ASCII DTD file. For efficiency reasons it works with a compiled form of the DTD. The DTD is compiled by a supplementary product called Document Architect, which is sold at an additional cost. Document Architect also includes a comprehensive FOSI editor, for creating and modifying FOSIs, though it should be noted that not all FOSI features are currently supported by the ADEPT•range of products. Although ADEPT•Editor is supplied with a few compiled DTDs and FOSIs, in practice it is also essential to have access to at least one Document Architect licence at each site, in order to be able to compile DTDs and create and modify FOSIs.

The editor is set up to work with a given DTD by first running the Document Architect program. Within Document Architect there is a DTD Editor, which allows the user to either create a new DTD or to reference an existing DTD. There is also a FOSI Editor, which the user can use to either create a new FOSI or to reference an existing FOSI, and an ATD (Auxiliary Tag Data) Editor, which allows the user to specify characteristics which are not specified within the FOSI (such as how to process tables and graphics, which tags should be displayed or hidden by default, etc.). Within Document Architect, the user then compiles the DTD and FOSI and installs them in a relevant directory on the system, where they are available for use by any ADEPT•Editor user.

The user sees an SGML document on the screen in a semi- WYSIWYG form. Screen formatting characteristics such as different fonts, font styles, indents, colours, spacing, etc. can be associated with the SGML elements via the FOSI, so that visual characteristics can be used to provide feedback on the SGML structure. New SGML elements are added by placing the cursor at the insertion point and choosing one of the selection of elements presented on the tag menu. The elements shown on this menu are Dynamically calculated so that only valid elements at the current cursor position are ever displayed. Required sub-elements of inserted elements are entered automatically by the system. Using this mechanism, it is not possible to create an invalid SGML document, other than in the special case of an SGML document which is invalid because it is incomplete.

Through the embedded command language in the ADEPT•Editor, it is possible to totally customise the user interface if desired. All of the options on menus are actually functions written in the command language. New functions can be written by users and made available via menus. Commands can also be typed directly into the command line which is available at the bottom of the main window.

A comprehensive context-sensitive help system is available at all times, and DTD-specific help messages can be written and made available to the user.

The table and equation editors provided as part of ADEPT Editor are generally acknowledged as the most powerful currently available in an SGML product. They allow the user to create complex tables and equations in a WYSIWYG mode, yet save them as valid SGML marked-up tables and equations. The table editor can save tables in either of two forms, an ArborText table DTD form or a CALS table DTD form. Equations are coded according to the AAP equation DTD fragment.

Graphics are displayable either inline or in popup windows. Any illustration package may be used to create and edit graphics, though if it is wished to display them inline then the package must be capable of outputting graphics in one of the file formats currently accepted by the ADEPT•Editor. ArborText also provide for Unix platforms the Island Graphics packages IslandDraw and IslandPaint, and they provide filters for CGM, IGES and CCITT Group 4 formats to and from the Island formats.

Documentation is generally comprehensive and easily understandable, apart from one important aspect - how to create and modify FOSIs. As FOSIs are the only means by which screen and (in the ADEPT•Publisher product) page representation may be specified, this is a major cause of difficulty in setting up new applications. The documentation appears to assume that the user will already have a knowledge of FOSIs, though in general, at least in Europe, this is not the case in practice. The FOSI specification (contained in Appendices to MIL-M-28001, a US military specification) is not easily comprehensible or currently unambiguous.

Setting up an application can be very time-consuming, requiring an intimate knowledge of FOSIs and the internal command language. This may be acceptable if there are a large number of documents to process conforming to a limited number of document types. If there are many different document types and a small number of documents conforming to each type, then the set-up time required for each document type becomes a major source of frustration.

ADEPT•Publisher is a combined SGML editor and batch composition system which runs under X-Windows on Unix platforms. The ADEPT•Editor is integrated with the TeX composition engine, to allow the creation of SGML files and the creation of typeset pages directly from SGML files. Setup and usage are the same as for ADEPT•Editor, with Document Architect being required to edit DTD's and/or FOSIs. The only difference the user sees between the two systems is the appearance of two new options on the Files menu, Print and Print Preview. Selecting the Print option causes the currently-open SGML file to be submitted to the composition system. This produces a PostScript file which is then sent to a printer. Print Preview displays the TeX DVI file in an adjacent window.

In general, the integration between the style and layout specification mechanism (the FOSI) and the composition engine (TeX) is adequate for most purposes. However, it should be noted that not all aspects of FOSIs are implemented in this system, and some of those that are implemented do not always perform as documented. There are several bugs in the system which can cause unexpected results. In particular, the layout of tables, especially large tables, can cause problems. Also, the TeX composition engine does not provide any pointers back into the source SGML file to indicate where page breaks have occurred. This means that it is extremely difficult, if not impossible, to use this system in a change page environment, where it is desired to automatically create change page update packages.

Composition speed is also not the strongest point of this product. Generation of tables of contents and resolution of cross-references may take up to three formatting passes through the document. One document of about 1000 pages, which required three passes, took almost six hours to process on a Sun IPC.

Another difficulty in using this product again arises from the fact that a FOSI is the only means of specifying presentation characteristics. FOSIs are designed to specify the representation of SGML-encoded documents as paper page- based documents, but they are specifically designed for technical manuals. For example, there is no way of specifying how side notes should be presented, as side notes do not occur in US military technical manuals. However, they do occur frequently in legal publications. Therefore, this product is not suitable for creating those types of documents which contain page structures or objects not found in technical manuals.


Product:
Write-It
Associated Products:
Mark-It parser
Developer:
SEMA Group (Belgium)
UK Supplier(s):
All enquiries should be directed to SEMA Belgium
Price:
n/a
Platforms:
MS-DOS.
Description:
Write-It is an MS-DOS word-processor and SGML-file editor.
Assessment:
This product has been available for many years, and development of it seems to have ceased. However, it handles all features of SGML.

Product:
GriF SGML Editor, GriF SGML Notes
Associated Products:
GriF Application Builder, GATE
Developer:
Grif S.A. (France)
UK Supplier(s):
OMI Logistics Ltd.
Price:
Grif SGML Editor: £3,200
Grif Application Builder: £4,200 (inc. 1 SGML Editor licence)
Grif Application Toolkit Environment: £10,420
(includes 1 licence for Application Builder and SGML Editor)
Platforms:
PC/Windows 3.1, UNIX/Motif,
Mac (System 7 and Power Mac) available March 1995
Description:
Grif SGML Editor is a `fully functional' editor for SGML- tagged files and documents. Its two main distinguishing features from other systems is that it is a complete implementation of the SGML standard, and that it gives users a "natural" view of their documents freeing them from having to master unfamiliar techniques. When the document is edited the Grif SGML Editor uses a `Document Model' that specifies the possible structure and presentations of the document. These diverse screen presentations are the `Logical Views'. The insertion of new elements is contextual. The documents created by the Editor are always valid and conform to the model. The author therefore concentrates on the content. The system of logical views means authors unfamiliar with SGML do not have to learn a whole new way of working, so improving writer productivity.

Grif Application Builder integrates arbitrary DTDs in a few minutes. Data input is immediately possible using the default presentation model. The model can be enriched using a presentation language which lets the user define a number of different physical representations of the SGML instance. The language allows the creation of a WYSIWYG view that can be printed directly using PostScript, without having to use complex composition software.

GATE (Grif Application Toolkit Environment) includes routines that take care of transparent access and communication between Grif SGML Editor and different application tools. This allows shared access with documents created with non- SGML software.

Grif ActiveViews is an SGML document viewer which shares the same interface as the Grif SGML Editor. It provides a number of features to aid navigation in more complex documents. At no time is the user given the opportunity to modify the document; the security of the information base is maintained at all times.

Assessment:
Grif is a combined SGML editing tool and composition system which runs under X-Windows on Unix systems and Microsoft Windows on PCs.

Grif combines a very sophisticated SGML editing tool with an interactive composition system, which means that a true editable WYSIWYG screen presentation is possible. It has several unique features which other SGML editors do not have, including multiple editable screen views of the same document. This means that it is possible to have several windows open at the same time, each showing a different view of the same document and each being editable. Any changes made in one window are immediately reflected in all the other windows.

To specify the mappings between SGML elements and attributes to formatting characteristics Grif uses presentation models, which are proprietary style sheet definitions. Presentation models are created using the Grif Application Builder. Multiple presentation models may be associated with each DTD and applied to the same document simultaneously. For example, the same document could be displayed in four separate windows on the screen. One could show a table of contents view of the document, one could show the document with SGML tags visible, one could show it with SGML tags hidden, and a fourth could show perhaps a tree-structure view of the document. All of these views are editable, with the result of any edits being immediately visible in all views.

Grif also has WYSIWYG table and equation editors, and it can also be used in batch composition mode as well as interactive. There is also the Grif Application Toolkit Environment (GATE) which provides a programming interface to all of the Grif kernel functions, allowing the product to be customised and integrated into larger system environments.

Grif SGML Editor is configurable to work with any valid SGML DTD. In common with most other editing tools it operates with a compiled form of the DTD, and the necessary DTD compiler is provided with the Application Builder product. Compilation produces a default presentation model, so that existing documents may be viewed and edited. A presentation model is the Grif method by which formatting characteristics are mapped to SGML elements and attributes. A presentation model is actually a program written in a declarative programming language, and the default presentation model created may be edited in any text editor. An unrestricted number of presentation models may be created and associated with each DTD, providing multiple views of the same document. It is not known what level of programming skill is required to create or modify presentation models, as the Application Builder product is not supplied for evaluation purposes.

An additional product, the Grif Application Toolkit Environment (GATE) is available. This is an Application Programming Interface (API), which provides access to the primitive functions which control the behaviour of the SGML Editor. It allows the user to customise the environment, create new commands and menus, and associate functions with user actions (for example, to check that the content of a part-number element is indeed a valid part-number).

How the user sees an SGML document on screen is determined by the presentation model chosen. However, whichever view is chosen that view is a true WYSIWYG representation of what will appear on the page if that view is printed. Although the formatting characteristics applied to each SGML element are defined in the presentation model, the user can make local modifications within a document via the Format menu. Style changes made in this way do not affect the underlying presentation model but are local changes, stored within the document as SGML processing instructions.

When a new document is opened, any minimally required elements are automatically inserted by the Editor. The user sees a screen with one or more grey squares visible. Each grey square (or canvas) represents an SGML element with no content. The canvas which is active (selected with the mouse) is a darker grey than the others. A Select Bar is visible across the top of the screen. This shows the current SGML context of the active canvas. If text can be entered in the active element, then the user can simply type in the text. If an element is required, the element is entered by selection from a menu of the currently-valid elements. Attribute values are entered via a dialogue box, with Dynamic type checking on entered values.

Table and equation editing is also available in a totally WYSIWYG mode. Whilst sufficient for most potential situations, it must be said that table and equation editing facilities appear not to be as comprehensive as those provided by the Arbortext tools. The Grif documentation states that it is possible to map any user-defined table elements to the table structures used by the Grif editor, but without the Application Builder product it is not possible to determine the complexity of doing this or the actual functionality offered.

Graphics are displayed inline, and the supported formats are : Xdump (Unix), Windows Bitmap, TIFF, CGM and Encapsulated PostScript. The Unix version of Grif also includes the InterViews graphics editor, allowing graphics to be edited from within a Grif document.

On the PC version evaluated there is no online help facility. It is not known whether this also applies to the Unix version, though the system documentation supplied does not mention any help facility. There is a Help menu on the menu bar, but this gives access to character symbol maps. These allow special characters (such as Greek or accented characters) to be entered by selecting them from tables.

As well as saving documents as validated SGML files, Grif is also able to export documents in various other formats. However, it is up to the user to specify the necessary transformations using the Application Builder product for anything other than plain ASCII export. In effect, the user must create the required conversion filters for each DTD to each desired export format. This means that Grif can also be used as an SGML transformation tool, for converting SGML documents into other forms.


Product:
WriterStation
Associated Products:
DL Composer
Developer:
DataLogics, Inc. (USA)
UK Supplier(s):
Frame Ltd
Price:
n/a
Platforms:
Apple Macintosh
Description:
WriterStation range of facilities included WYSIWYG text display, real-time SGML validation, and Proximity's Spell- Checking software. To enhance document creation and presentation, WriterStation enables users to interactively mark-up their SGML text while interfacing with graphics editors and viewers. Multiple graphic entities can be viewed and edited through windows to their external programs.

WriterStation is designed for integration with complex client-server and SGML database environments. WriterStation's API provides this capability by enabling the application designer to customize the interface and communication functionality.

Assessment:
This product does not seem to be actively marketed outside of North America. No assessment has been undertaken.