SGML White Papers

SGML ArticlesArticles by Dianne Kennedy which may be useful

Table of Contents

Overview of Articles
Book Review: SGML Implementation Guide;
(Return to Home Page)

Overview of Articles

Dianne Kennedy is an SGML consultant and founder of the SGML Resource Center. She has participated in the development of SGML systems beginning with ATOS in 1986. She currently chairs the DTD Working Group for SAE J2008 and writes for <TAG> . For questions and comments email Dianne at

Book Review: The SGML Implementation Guide; A Blueprint for SGML Migration

by B. Travis and D. Waldt
Reviewed by Dianne Kennedy


As an SGML implementor, rather than an SGML theorist, I am thrilled to see a book come to market which highlights the work of implementing SGML in a production environment. Books such as Charles Goldfarb's definitive book on SGML, The SGML Standard, and Eric Van Herwijnen's Practical SGML have served to educate us all on syntax and usage of the SGML Standard. But now that we are educated in the basics, what comes next? How can we get started? How do we know if we need to move to SGML? How can we build a business case and gain necessary funding? What are the components of an SGML environment? How can we best plan our SGML Implementation? These and many other key questions that implementors ask are discussed in "A Blueprint for SGML Migration"

Potential Audience

The philosophy of the SGML Implementation Guide is to provide a working knowledge of SGML and the disciplines and techniques that are required to achieve a successful SGML implementation. The book is designed to meet the needs of a number of groups of SGML Users:

  1. Managers who must learn about SGML, determine whether SGML is a good "fit" for their particular environment, and gain funding for an SGML project
  2. Systems Analysts who must set forth a plan to implement SGML
  3. Developers who must do the actual work of implementing an SGML System
  4. Programmers and technical people who are in the midst of SGML implementation and need some pointers
  5. Users who are interested in learning about SGML and what an SGML-based publishing environment will mean to them

Overview of the Book

The SGML Implementation Guide is organized in four distinct parts. This organization enables different reader audiences to focus in on those parts which are most meaningful to them without being burdened with material which is out of the realm of interest.

Part I of the implementation guide focuses upon the business issues and goals which drive organizations to implement SGML systems. This part begins with a general overview of the benefits of structured text and SGML over the unstructured document environment which has been fostered by the growing use of word processing and desk top publishing systems. Brian and Dale clearly describe the issues which should make us take a second look at the value of perpetuating an unstructured document environment. This part gives managers assistance in clearly stating the problems that they may find with their current publishing environments. Goals of an SGML system are set forth so managers can compare their own goals with the goals of an SGML system to determine if moving to an SGML system is appropriate for their organization. A high level overview of the tools which must be integrated to make up an SGML environment is presented so that management and designers can have a clear picture of SGML subsystems.

Part II of the guide focuses upon the SGML project. Brian and Dale share with users their own methodology for performing document analysis. Beyond the mechanics of performing document analysis, the guide provides users with tips as to how to select the analysis team, and how to translate project goals into SGML constructs. The SGML implementation project is then broken into logical phases which are discussed in detail. The implementation guide uses everyday language and is filled with examples which bring reality to the concepts presented. I was happy to see that some important real-world issues such as how a company can acquire implementation resources are discussed even though these fall outside of the realm of technical project issues. SGML Conversion and Data Management are also highlighted in Part II.

Part III is called The Language. This part of the book provides a basic manual for SGML syntax and use. The authors include those topics which are necessary to the implementation of today's SGML systems. They clearly state that SGML syntax and use is not the goal of the book and often refer readers to other titles for more in-depth coverage of many topics. While it would be nice to have everything about SGML within a single cover, this book at some 500+ pages is lengthy enough to stand on its own without adding more complete coverage of SGML syntax and usage. Two nice features within Part III are the use of many real examples of DTD fragments to explain how a certain SGML construct can be used and the practice of showing us how an SGML parser would read the construct presented in the example. These features make the discussions of the language immediately usable within the context of an SGML implementation.

The SGML Implementation Guide ends with a series of Appendices. The first three appendices present detailed case studies of recent SGML implementations. The background of each project, the project goals, implementation issues and a description of the implementation, itself, help users to better understand the variables within any SGML implementation project. The authors then present the methodology by which their own book was produced in SGML. Finally a series of appendices present a fully commented SGML Declaration , a Glossary of Terms and Acronyms, and extensive lists of SGML Resources and Companies to complete this guide for implementors.


The SGML Implementation Guide provides a good starting point for someone who is faced with the enormous task of implementing SGML. It gives thorough coverage to most topics which an implementor will encounter, from business issues to technical ones. Initial reaction to the book is positive. One must remember, however, that the advice and opinions presented in this book come from the personal experiences and business philosophies of the authors. Readers and other SGML consultants may therefore take issue with some content.

As an early SGML implementor, I must agree with Bill Davis in the prolog when he says "I have always wanted to write this book." Our industry needs good, solid, SGML implementation guidance if we are to support the fundamental change which has taken place in the way the world views the use and reuse of textual information. I hope The SGML Implementation Guide is only the first of this new kind of SGML text.

.(Return to TOC)