User interface designers should know how to present data from widely
varying sources in a uniform manner. That is why the same class browser
(e.g.) can work for C++ and Java, and the same file browser can work for
local files and for file systems accessed via FTP (which are
syntactically very different from local function calls!). Standard
wordprocessors can wordprocess files in a variety of different formats.
Valid reasons for standardizing on a single syntax for any of these
things are: #1. to protect the user's data from control by a single
vendor (obviously not an issue in this case) #2. to reduce the workload
for implementors (which I suspect is the real issue in this case) and
#3. to to reduce the cost of entry to the market (another issue in this
case).
In other words, as Len has pointed out, the DTDs-as-instances efforts
are primarily focused on making life easier for vendors, perhaps at the
cost of simplicity for users. If this results in more tools, then it
might be a net win, but we don't know yet.
Of course particular DTDs-as-instances proposals may have other benefits,
but those benefits could as easily be added to DTD syntax as to some
new syntax.
Paul Prescod