[ http://issues.apache.org/jira/browse/XERCESJ-1104?page=comments#action_12331811 ]
William Eliot Kimber commented on XERCESJ-1104: ----------------------------------------------- I understand the desire to not change the XNI API. If it's possible to examine an XML entity description and determine that it is in fact a schema, then that does make it possible to fix the implementation of schema loader. However, the bug is still a bug: the Xerces implementation of how schemas are resolved via catalogs is wrong and needs to be fixed. Therefore, I don't think this issue should be closed. I'm not sure how to be clearer: the code that is part of Xerces is broken. It's not an issue of being able or not being able to extend the core code, it's a function of the code, as implemented, being wrong. I will look at reworking resolveEntity() in XMLCatalogResolver to see if I can put the logic there to use URI entries for schemas. There may still be other issues with how Xerces enables the resolution of non-entity resources during parsing (i.e., XIncludes) but I haven't had the time to dig into that code. > Resolution of schemaLocation URIs should be via URI resolution, not entity > resolution > ------------------------------------------------------------------------------------- > > Key: XERCESJ-1104 > URL: http://issues.apache.org/jira/browse/XERCESJ-1104 > Project: Xerces2-J > Type: Bug > Components: XNI > Versions: 2.6.0, 2.7.1 > Environment: All > Reporter: William Eliot Kimber > > The resolveSchema() method of XSDHandler uses the entityResolver to resolve > URIs in schema location hints. This has the effect that, when using a catalog > resolver that SYSTEM entries are used to resolve the schema URIs. > However, schemas are not entities and therefore their URI references should > not be resolved via an entity resolver but via a URI resolver and should, > therefore be resolved via URI catalog entries, not SYSTEM entries. > That is, by the OASIS Entity Resolution spec one would expect to declare URI > entries to remap schema location URIs but this does not work. > I'm happy to develop a fix but it may take me a while to figure out exactly > how to go about it. > Because this behavior has been around for a while (since at least version > 2.6) and is documented in at least one tutorial I found, it will probably be > necessary to control the use of an entityResolver or URI resolver through a > system property. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
