Another thought over night --

At 07:07 PM 11/5/2008, I wrote:
>DTDs still work well enough to be ubiquitous in certain environments 
>where they always worked well. There, the best reason to use them is 
>probably "if it ain't broke", etc.; underlying this is the (not 
>inconsiderable) migration costs, given that DTDs and document sets 
>are still evolving together, and projects find it hard to freeze 
>even one or the other (and certainly not both) long enough to 
>redesign and retool.
>Yet it could also be said, as I once read in an advertisement for 
>machine tools, "If you know you need new tools, and you haven't 
>already bought them -- you're already paying for them."

While I stand by the last statement, I should add that when one 
considers the entire landscape of XML validation these days, it is 
perhaps unfair either to regard DTD vs RNG (or XSD) as an either/or 
proposition, or to regard them in isolation from other validation 
technologies such as XSLT, Schematron and even (in certain 
situations) XQuery. It all depends on what validation is for, and 
mixing and matching can work very well. Schematron in particular 
makes a good spackle and hole-filler, and Schematron in combination 
with either DTD or RNG gives you just about everything (throw XSLT 
2.0 in there and you can even have datatype annotation sans XSD, 
albeit not at parse time).

The other perennial problem is the cost of learning something you 
don't know. While I can say "you have a DTD and you need XSD type 
annotation? No big deal, run it through Trang and then massage your 
schema with an XSLT to assign the types", to many that's like Monty 
Python's skit "How to Rid the World of All Known Diseases" (first 
discover a marvelous new cure for something, etc.). The investments 
you've already made in learning something, vs. the investments you're 
willing to make in learning something else (including the opportunity 
costs of doing so) -- those concerns are never far away. The 
quizzical expert who wants to know why use RNG may be asking "why use 
something I don't know when you could have used something I do?"

Given all this, while not personally privy to the motives or 
rationales that led TEI to pick RNG, I think the best answer to Dot's 
CS interlocutor is that RNG offers the best fit with system-wide TEI 
requirements, including the requirements to generate schemas 
semi-automatically and to maintain large and complex schemas 
reasonably legibly with a familiar tool set.


Wendell Piez                            mailto:[log in to unmask]
Mulberry Technologies, Inc.      
17 West Jefferson Street                    Direct Phone: 301/315-9635
Suite 207                                          Phone: 301/315-9631
Rockville, MD  20850                                 Fax: 301/315-8285
   Mulberry Technologies: A Consultancy Specializing in SGML and XML