hi, I've logged the version as "unspecified" as I'm not sure how to get this information, but it is the version in the first release candidate of jre5.0 I am almost certain this is a bug in Xerces - 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'> <!-- am not getting notified about this via EntityResolver <!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 the implementation is not honouring its javadoc contract? thanks, Andrew