By the same token, consider two scenarios: You're in a room with 4
experienced programmers and 4 domain experts. Let's say they're experts
in healthcare, since that's so topical these days. They know about
medicine and/or insurance, but not much about IT. Now, everybody has to
work together and come to an important agreement. You're the facilitator.
Scenario 1: You put RNG syntax on the table. The programmers grin
smugly. They feel perfectly comfortable. The healthcare experts
grimace and stir uneasily.
Scenario 2: You put DTD syntax on the table. Everybody stirs uneasily.
What's this bizarre nonsense?
(Aside: As a matter of common practice, the world's largest SGML
application, HTML, has long since de-facto vacated the restriction to
which you refer [viz. id syntax].
W3C also crippled DTD syntax in another important way, once again
unnecessarily, by disallowing parameter entities in DTDs that are
included directly, verbatim, in XML documents.
They're still OK in remote DTDs.