A Sneak Preview of XMetaL 2.0

March 8, 2000

Liora Alschuler

In a conference mercifully free of product pitches and thinly veiled marketing spiel, SoftQuad Software, Inc. was given the green light to sneak preview the next of generation XMetaL, the document and data editor for XML, SGML, and HTML. (Read our review of XMetaL 1.0 here.) What Lauren Wood, Director of Product Technology, showed was real code, but "pre-alpha." That means software that is still under development, with a softer than "carved-in-stone" feature set. Still, the additions and enhancements show serious development over release 1.0, which shipped in May of 1999.

Greater Support for CSS

XMetaL 2.0 will support auto-numbering and CSS tables, extending support to most of the W3C's CSS1. CSS tables mean that users can use real, rich, XML markup such as <catalogNumber> and <item>, and present the information in tabular form. This cuts one of the last strong bonds with non-extensible document markup languages, which force procedural markup (e.g., <td>) on information displayed in neat rows and columns.

The CSS tables support basic GUI editing, but won't have all of the features of HTML tables, where presentation is hard-wired into markup. You can hit "Tab" at the end of the last cell and a new row will be added. Merging and dividing cells is not supported.

In effect, providing a standards-compliant method to layer formatting on semantic markup means that information can be imported from and exported to databases without loss of markup "intelligence." It has long been an anomaly of SGML and XML implementations that the information most tractable from a machine-processing standpoint was dumbed down to row/column markup for human consumption. Hopefully, we can all now go about our business without further brouhaha on the separation of content and presentation for tabular material. Thank you, SoftQuad, for relieving us of this tedious debate!

Inline ActiveX Controls

The new release will have inline ActiveX controls to support editing and viewing of complex data types within the document. Potential applications include viewing CGM files and editing MathML. A CGM viewer is a fairly simple call, while an equation editor would require some scripting to coordinate the display, the input control, and the document being edited.

Forms Editor

The new forms editor can build a form or dialog box, which can then be used to offer more intuitive or validated editing facilities on an XML document. The XMetaL DOM acts as a bridge for data and behavior between the forms and the application. The forms editor is similar in function to that in Visual Basic, but lighter weight.

Wood showed an embedded calendar control that comes with the editor. In the demo, a GUI window lets the user click to select a day of the month. The corresponding display is formatted, by preference, as Month Day, Year. Viewing the source, however, shows an ISO-compliant date of YYYYMMDD. In this example the XMetaL DOM talks to the IE DOM, and is mapped to the document DTD with a script.

Structure View

Back by popular demand is a structure view of the document being edited. Actually, XMetaL never had structure view, but it was native to its spiritual ancestor, Author/Editor, and to virtually all prior structured document editors. The structure view is created by the use of a style sheet that cascades off the one used in the main editing window, permitting easy optimization of the skeletal view. What's more, users can define more than one structure view style sheet in order to accommodate different demands.

The structure view window acts as a navigator for the document. Clicking at a point brings the edit cursor to the corresponding point in the document, but you cannot edit directly in the structure window.

Script Editor for Macros

Showing off the new script editor for macros, Wood demonstrated Microsoft Word look-alike change tracking, complete with on-screen marking of deletions and additions, and a dialog box for accepting or rejecting changes. Interestingly, under the covers, XMetaL uses SGML inclusions to markup the changes. The script editor was also used to create annotations that, for the demo, were stored inline in the document, but which could be posted to an external file.

Like the forms editor, the script editor has hooks to the XMetaL DOM.

More of the Same (Thanks)

Also incorporated into the pre-alpha code were more event management hooks designed in conjunction with SoftQuad's content management partners, including Vignette and Documentum. There is also a debugger for JScript and VBScript, and support for OASIS catalogs.

The first release of XMetaL showed a commitment to making it easy to create customized editing environments for structured documents. This preview is an instance where "more of the same" is a Good Thing. Consistent with the target market articulated at product launch over a year ago, SoftQuad has made it easier than before to create a supportive environment for structured document creation and editing.

Of course, as consumers, we can't have too much of a good thing, so there is still a wish list of things that would be awfully nice to have. Several popular items were requested during the brief Q&A session that followed the presentation. At the top of the list was a request for XSL formatting object support. Wood explained that, while there was no indication that they would not support formatting objects in the future, it would not be done in release 2. Further, she said that CSS supports the type of layout that falls within their scope—they make no claim to high-end publishing output capability. A point release already added XSLT support, using James Clark's XT to produce HTML.

Cross-platform support? Not for release 2. Schema support? Not for release 2 certainly, but they are closely following the progress of the W3C draft, and the pace at which they adopt schemas will be contingent on the reports from the Candidate Recommendation phase—both in terms of implementation difficulty and customer demand. Wood added "Obviously we are looking at schemas. It would be premature for SoftQuad to promise a production level product based on a standard that could change dramatically between now and Candidate Recommendation and Proposed Recommendation."

Support for well-formed (DTD-less) editing? No comment. Support for more than one style sheet for main editing window? Hmm, maybe, no promises.

More information is available at


Forms editor calendar GUI

The forms editor calendar GUI and above it, the display version of the date.

XMetaL structure view

The preview version of the XMetaL structure view.