As part of my longterm progress at being surprised by the obvious. Consider:
<!DOCTYPE SYSTEM "fred.dtd"> By the time Xerces calls an EntityResolver, this has been turned into file:......../fred.dtd. (where all the dots are the pathname of the XML file that contains the DOCTYPE. Is there a way to tell xerces to leave system IDs alone?