I mention this because I chipped in and helped to modularize the DTD, enabling you to "extend the list of allowable elements using parameter entities, so that extended XML files can be still validated. ... [F]or instance, a directory of .dbk files, might be munged for <articleinfo> data which would be included in the output. The output could then be cached and munged again later using another SAX filter or XSLT."