[ 
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]

Reply via email to