Hi Carla,

The change in behaviour is most likely due to the fix for this JIRA issue
[1]. From a quick glance at the DOM Level 3 Load & Save spec [2] I didn't
see anything which forbids expansion of the system ID before reporting it.

Thanks.

[1] https://issues.apache.org/jira/browse/XERCESJ-809
[2]
http://www.w3.org/TR/DOM-Level-3-LS/load-save.html#LS-LSResourceResolver

Michael Glavassevich
XML Parser Development
IBM Toronto Lab
E-mail: mrgla...@ca.ibm.com
E-mail: mrgla...@apache.org

<carla.spr...@emc.com> wrote on 03/08/2011 10:15:48 AM:

> Hi,
>
> When parsing an XML document "personal-schema.xml" with
> xsi:noNamespaceSchemaLocation="personal.xsd" with the code below, I
> get different systemId parameter values in the LSResourceResolver in
> version 2.11.0 and 2.10.0 :
>
>     DOMImplementationLS implementationLS = new DOMImplementationImpl();
>     LSParser builder = implementationLS.createLSParser
> (DOMImplementationLS.MODE_SYNCHRONOUS, null);
>
>     LSResourceResolver resolver = new LSResourceResolver() {
>
>       public LSInput resolveResource(String type, String namespace,
> String publicId,
>           String systemId, String baseURI) {
>         // in Xerces 2.11.0, systemId is expanded: ?file:/C:/my/
> path/to/doc/personal.xsd?
>         // in Xerces 2.10.0, the value is exactly the same as
> declared in the document: ?personal.xsd?
>         return null;
>       }
>     };
>
>     builder.getDomConfig().setParameter("validate", Boolean.TRUE);
>     builder.getDomConfig().setParameter("resource-resolver", resolver);
>     Document doc = builder.parseURI(getURL
("personal-schema.xml").toString());
>
> Is this a bug?
>
> Thanks!
> Carla

Reply via email to