








Liam R. E. Quin, Development Manager, Suite 901 Inc., 67 Yonge Street Toronto, Ontario, Canada M5A 3C7; Phone: +1 416 955-9845; Web: http://www.interlog.com/~liamquin/; Email: liamquin at interlog dot com
An SGML Document type definition serves many purposes. It tells an SGML parser how to interpret markup, and hence is computer readable. But it also serves as a repository for documentation about the kinds of document that should use it, documentation that is read by humans rather than computers. Finally, it is itself a document that must be read and understood by those people who have to maintain it, change it or use it.
Because a DTD must be read by humans as well as computer, it must be presented in a way that is clear and effective. A DTD is neither a program nor a document, but shares some characteristics of both. Techniques for presenting both textual information and structured information have been developed in other fields, and it is instructive to study these techniques and to see how they apply to SGML DTDs. In particular, graphic design and typography on the one hand and computer science and program layout on the other are very relevant.
Existing literature on document analysis and the preparation of SGML Document Type Definitions does not generally discuss the layout of SGML DTDs from a typographic or engineering point of view. This paper describes a number of techniques and principles used in typography, graphic design, information architecture and also in engineering and computer science.
The resulting DTD layout may appear unfamiliar and uncomfortable at first to those accustomed to other layouts; with a little practice, however, most people seem to prefer them, and they are generally much clearer to people who have not studied large numbers of DTDs.
Contact Robin Cover with corrections and updates, or to submit contributions to the ISUG online document database.
