TechWhirl (TECHWR-L) is a resource for technical writing and technical communications professionals of all experience levels and in all industries to share their experiences and acquire information.
For two decades, technical communicators have turned to TechWhirl to ask and answer questions about the always-changing world of technical communications, such as tools, skills, career paths, methodologies, and emerging industries. The TechWhirl Archives and magazine, created for, by and about technical writers, offer a wealth of knowledge to everyone with an interest in any aspect of technical communications.
Subject:Re: DTD - any info about them From:"Simon North" <north -at- synopsys -dot- COM> To:techwr-l -at- lists -dot- raycomm -dot- com Date:Thu, 29 Jun 2000 16:39:18 +0200
A DTD is essentially a data model for your SGML information in the
same way that a database structure is. The DTD should reflect
what you want to do with your SGML data. Ultimately, just as with
a database, you can only get out what you put in (if your smallest
element is a section, that will be the smallest unit you can deal
with). You should therefore choose, or write, your DTD very
carefully or the results will come back to haunt you time and time
There are hundreds of DTDs 'out there' ranging from the incredibly
detailed (TEI), to quick and dirty (HTML) and attempts to be as
universal as possible (DocBook). Developing your own DTD, if you
do it as it *should* be done, is a very long and complex task.
Writing the DTD itself is pretty trivial, the effort goes into the
surrounding design effort and things like documentation (you'd think
people involved with SGML documentation would understand the
need to document a DTD but it often doesn't happen ... and I'm
Based on my own experience gained from trial and error over the
past 10 years or so, I'd advise you to use a commercially available
DTD as the basis and tailor it to your needs. Most (J2008 and
DocBook are good examples) are specifically built to allow you to
There is one big argument in favor of DocBook, there's already an
implementation built into Frame+SGML. You should be aware that
having a DTD is one thing, but to make it usable in Frame+SGML
you will also have to create the Frame application (which is almost
as much work).
The following links is probably the most useful source on DocBook: