Re: [xml] Problems with catalogs using delegates
- From: Daniel Veillard <veillard redhat com>
- To: Peter Kullmann <p kullmann arenae ch>
- Cc: xml gnome org
- Subject: Re: [xml] Problems with catalogs using delegates
- Date: Fri, 23 Mar 2007 10:44:20 -0400
On Fri, Mar 23, 2007 at 02:38:27PM +0100, Peter Kullmann wrote:
I have two problems with catalogs that use delegateSystem, delegatePublic or
both. I'm not at all sure whether this is a problem of the libxml
implementation or in my understanding of catalogs.
The semantic is defined there:
http://www.oasis-open.org/committees/entity/spec-2001-08-06.html#s.semantics
So here's the setup:
1. catalog.xml:
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
<delegatePublic
publicIdStartString="-//My Pub//Id"
catalog="delegate-catalog.xml"/>
<delegateSystem
systemIdStartString="http://doesnt.exist"
catalog="delegate-catalog.xml"/>
</catalog>
Don't expect both to be used, on delegates at most one is followed,
but if that fails the algorithm never backtracks
2. delegate-catalog.xml:
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
<rewriteURI
uriStartString="http://doesnt.exist"
rewritePrefix="." />
<public
publicId="-//My Pub//Id//EN"
uri="a.dtd" />
</catalog>
Here is the first problem:
xmlcatalog catalog.xml "http://doesnt.exist/a.dtd"
does not resolve! It tries the delegate, but fails to use the rewrite URI
rule.
at one time either URI or Public resolution is used, but not both at the
time see the algorithm
xmlcatalog delegate-catalog.xml "http://doesnt.exist/a.dtd"
resolves correctly (just to check)
The second problem is related to the first and occurs when validating a
document. The catalog system fails to resolve the dtd in a document that
contains a public id and a system id:
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE root PUBLIC "-//My Pub//Id//EN"
"http://doesnt.exist/a.dtd">
<root />
On the other hand, the resolution of the public id seems to work:
xmlcatalog catalog.xml "-//My Pub//Id//EN"
resolves correctly
I'm grateful for any hints and tips.
Tip: http://xmlsoft.org/catalog.html#validate
export XML_DEBUG_CATALOG environment variable
Daniel
--
Red Hat Virtualization group http://redhat.com/virtualization/
Daniel Veillard | virtualization library http://libvirt.org/
veillard redhat com | libxml GNOME XML XSLT toolkit http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]