Never mind, upgrading to Xerces 2.3 fixed the problem.

On February 15, 2003 04:18 pm, Slava Pestov wrote:
> Hi,
>
> When exactly does the XSD loader use the parser's entity resolver and when
> does it not?
>
> My XML editor downloads and caches schemas to minimize network activity.
> The problem I am having is with schemas that include other schemas using
> <xs:include>, for example:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema";
> elementFormDefault="qualified" version="1.0">
>   <xs:include schemaLocation="dbnotn.xsd"/>
>   <xs:include schemaLocation="dbcent.xsd"/>
>   <xs:include schemaLocation="dbpool.xsd"/>
>   <xs:include schemaLocation="dbhier.xsd"/>
> </xs:schema>
>
> The first time a file referencing an http: schema is opened, my custom
> entity resolver  downloads and saves the schema to a local file named, say
> /home/slava/.jedit/dtds/cache39516.xml. Then each of of the <xs:include>'ed
> files is passed to the entity resolver, and correspondingly downloaded and
> cached. So far, so good.
>
> The second time a file referencing this schema is opened, the top-level
> file is resolved correctly from the cache. Unfortunately, Xerces then
> attempts to look for files named "dbnotn.xsd", "dbcent.xsd", "dbpool.xsd"
> and
> "dbhier.xsd" in the current directory, instead of passing these path names
> to the entity resolver. This is wrong. Why does it behave differently in
> this case, just because the top-level file is a local file? Why doesn't it
> _always_ pass all path names to the entity resolver?

-- 
Slava Pestov

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to