[Home] [By Thread] [By Date] [Recent Entries]
Joe English writes: > Same here, except that for most of my applications DTDs are > neither overkill nor inadequate; they're usually just right. > But for document processing and interchange, the value added > (mostly whitespace significance, default attribute values, > and indicating ID-ness) isn't worth the administrative overhead. I agree with Joe. I like DTDs (heck, I wrote a book about them), but they just don't work very well for interchange in production-grade systems. Either (a) they cause a lot of unnecessary network traffic and introduce a new point of failure (and security hole) for your system, or (b) they require the creation and maintenance of a local cache that will almost certainly be screwed up or neglected as soon as someone different takes over -- in both XML and SGML, and probably in most of the rest of IT, anything clever is doomed to disaster as soon as the original implementors move on. My easy-to-remember rule is never to use DOCTYPE in XML documents intended for interchange. Ever. DOCTYPE sounds good in theory, but it will screw you and your customers horribly in real life. DTDs are useful for documentation. They're also useful for guided authoring in XML-aware editors, for system testing, and even for local verification; just make sure that you strip off DOCTYPE (and resolve any defaulted attribute values) before the document goes out the door. All the best, David -- David Megginson david@m...
|

Cart



