I have problem with by Xinclude or as an entity included files. I need to know, which files have been included by parser. Example:
<?xml version="1.0" ?>
<!DOCTYPE docBookChapter [
<!ENTITY externalFile SYSTEM "entityIncluded.xml">
]>
<chapter xmlns="http://www.w3.org/1999/xhtml"
xmlns:xi="http://www.w3.org/2001/XInclude">
<title>Third chapter</title>
<xi:include href="xIncluded.xml"/>
<chapter>
&externalFile;</chapter>
</chapter>
The parser creates DOM successfully, but how to get names of files included? The element xi:include is already replaced with content of file.
Extend
DefaultHandlerand@OverwritetheresolveEntitymethod. Your implementation will simply print or log the publicId/systemId and returnnull, so theSAXParserwill use the default behaviour to resolve the entities.Pass your
DefaultHandlersubclass with theSAXParserconstructor.