hi,
i have an xml
instance document which starts
========
<?xml version='1.0'?>
<!DOCTYPE PARTLIST SYSTEM 'http://www.arm.com/warehouse/warehouse-04.dtd'
[
<!ENTITY
sqltest_external SYSTEM 'SQL
_expression_'>
<!ENTITY sqltest_internal 'SQL _expression_'>
]>
<PARTLIST>
<!ENTITY sqltest_internal 'SQL _expression_'>
]>
<PARTLIST>
========
where I was hoping
to use EntityResolver to pick up both the dtd reference, and the
"sqltest_external" entity
Currently, using the
xerces distribution inside jre5.0 only the dtd reference is reported - but /not/
the external entity "sqltest_external". I've found other listener/handler API
for finding out that these entities are in the document and are parsed, but
would like to use EntityResolver to process the "SQL _expression_" so that the
result is substituted for &sql_external;
this is something
that doesn't seem possible with DeclHandler, or
LexicalHandler
the sax javadoc for
EntityResolver says: "The XML reader will then allow the application to
intercept any external entities (including the external DTD subset and external
parameter entities, if any) before including them."
so my thinking is
that either
a) the sqltest_external entity is not really external - but i don't see why not
from the annotated xml spec.
b) the implementation is not honouring its javadoc contract?
does anyone know if
this is true?
thanks,
Andrew