Proposal for a language optimized for WWW delivery

This proposal suggests a strategy for evolving HTML by using two different forms of markup, one for authoring and one for delivery. The first format, optimized for simple, platform-independent structural markup, would be an incremental improvement of HTML 2.0 that would add a few basic features such as tables and turn off features that are deprecated in the current 2.0 specification. This authoring language, HTML 3.0, would continue to fulfill the goal described in the IETF HTML specification: "a simple markup system used to create hypertext documents which are portable from one platform to another."

The corresponding delivery language would be based on an existing online delivery format called SDL that was developed for the Common Desktop Environment (CDE) help system. Extended for WWW delivery use, the proposed language would be called HDL (Hypertext Delivery Language).

Client/server markup

Networks today are based on the fundamental realization that certain functions are appropriate to servers, while other functions are appropriate to clients. The proposal set forth here is based on a similar principle: that certain forms of markup are appropriate to authoring and other forms are appropriate to delivery.

All systems of markup represent a compromise between expressive power and ease of authoring. As the number of markup elements (tags, etc.) in a language increases, its ability to convey structural and presentational information increases in proportion, but so does the difficulty of creating documents in that language. The break-even point between these two opposing tendencies depends on the availability of suitably powerful authoring tools. For example, domain-specific industrial markup languages such as DocBook (software documentation) and ATA-100 (aircraft documentation) are typically very rich in their ability to convey structural information, but are almost unusable without the help of expensive structured authoring systems. HTML, on the other hand, is a markup that is close to the upper limit of what can reasonably be produced using minimal authoring tools such as simple text editors and understood by relative novices.

Currently, HTML is both an authoring language and a delivery language. As use of the Web matures and control over online delivery becomes increasingly necessary, however, HTML's limitations as a delivery vehicle will become more apparent. We are already seeing the implementation of uncontrolled, nonstandard additions to the HTML tag set in order to overcome these limitations. Such ad hoc changes to the standard not only raise the spectre of chaos as commercial Web delivery systems compete for market share; they also threaten the usability of the HTML language itself as a straightforward medium for the expression of ideas.

The best way to avoid multiple incompatible delivery languages and the loss of interoperability is to standardize on one system of markup capable of expressing the complete range of typographical effects needed for cross-platform online display and to convert to this delivery format from other languages optimized for authoring or domain-specific retrieval. This proposal leverages an existing standard, SDL, that is already available to serve as the basis for a common Web delivery language.

The Semantic Delivery Language (SDL)

SDL was designed by Hewlett-Packard as a language for delivering online information, in particular help pages, to users of X-based Unix desktop systems. It is the primary delivery medium for the COSE Common Desktop Environment (CDE). The SDL standard is maintained by HP's Workstation Systems Division and is jointly owned by HP, IBM, Sun, and Novell. Digital, Hitachi, and Fujitsu will soon join this list. The standard can be obtained by anonymous FTP from ftp.ora.com:/pub/davenport/SDL.

SDL has the following characteristics.

In addition, SDL provides a rich yet efficient set of structures for controlling nearly every aspect of display that is relevant to device-independent online delivery in cross-platform environments, including:

The typography of any block of text can be directly controlled in SDL. Typographical controls built into the styles component of the language include font size, font width, font color, font style, font spacing (monospaced or proportional), font weight, font slant, left margin, right margin, top margin, bottom margin, border type, vertical justification, and horizontal justification. In addition, heading elements can be placed in any one of eighteen different positions with regard to the block of text with which they are associated and likewise for the positioning of subheads in relation to their associated heads. Non-typographical attributes include TOC level and search weight. All of these attributes are optional and will be supplied with defaults appropriate to the operating environment if omitted. Specified attributes are taken as "hints" that will degrade in a controlled way depending on the level of support for the necessary functions in the operating environment.

Like HTML 2.0 and most other standard markup languages, SDL is an application of ISO 8879 (SGML).

SDL to HDL

SDL lacks several features that would need to be added in order to create a Hypertext Delivery Language for the Web. These include:

It is to be expected that an HDL standardization effort would discover the need for further extensions to SDL beyond those listed above.

HDL support outside the current WWW community

Sun has announced that it will be supporting SDL in a Web-capable browser that will ship with its Unix operating systems. Since the CDE 1.0 code is jointly owned by the other COSE members, there is a very high probability that some or all of them will also ship SDL Web browsers. A proposal for a universal SGML browser that will support SDL directly (without intermediate translation of SDL style information to another stylesheet language) is currently under consideration by an important industry consortium and seems likely to be approved. SDL is a natural choice for help systems and will likely achieve widespread use as a delivery mechanism for Unix help and in some quarters as a replacement for Winhelp. All of this is independent of whatever support might come from the current WWW community as a result of this proposal.

Availability of reference code

HP has generously offered to make the source code for the X Windows SDL viewer used in CDE 1.0 publicly available if a suitable educational institution will take responsibility for distributing and supporting it. The SDL browser will still need the addition of the features noted above in order to become the cross-platform HDL browser envisaged by this proposal, but obviously the public availability of the SDL parsing and rendering code will make the implementation of HDL viewers, and the incorporation of SDL capabilities in existing HTML browsers, much easier than it would be otherwise.

Action items

It is hereby proposed that the IETF HTML working group adopt SDL as the basis for a future Web browser language (HDL) and work to define the additional features that would make HDL a workable standardized alternative (not a replacement) for HTML in future WWW browsers. It is further proposed that work on HTML 3.0 continue in order to further refine a format-independent markup language suitable for hand coding documents intended for Web delivery.

Since many document producers who could benefit from the adoption of an HDL standard must know for planning purposes whether such a standard will become part of HTML browsers or whether they should begin working toward solutions based on universal SGML browsers instead, the HTML working group is urged to give this proposal its earliest attention.

Further information

An accompanying document contains a further discussion of the reasons for supporting this proposal.

Jon Bosak, Novell Corporate Publishing Services     jb@novell.com