[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: rewriteSystem in docbook-xsl XML catalog



Actually, a possible benefit of having them in there is that it
suppresses an unnecessary warning that the xmlcatalog utility
emits if you run it like this:

  xmlcatalog /etc/xml/catalog http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl

If you do that and there is no System ID mapping for that URI
(even if there is a URI mapping), you get this:

  No entry for SYSTEM http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl
  file:///usr/share/xml/docbook/stylesheet/nwalsh/html/docbook.xsl

And instead of going to stderr, the warning goes to stdout right
along with the "file:" output.

So, it is actually of (limited) benefit to have the rewriteSystem
entries in there, and as you said, they aren't doing any harm.
Give that, I guess there's no need to remove them. Mostly I was
just thinking that other packagers might use that catalog file as
an example and end up unnecessarily including rewriteSystem in
catalog files for other stylesheet packages. But I guess that
wouldn't be the worst thing in the world either...

  --Mike

Mark Johnson <mrj@debian.org> writes:

> Michael Smith wrote:
> >Mark,
> >
> >I notice that the catalog.xml in your docbook-xsl package contains
> >both rewriteURI and rewriteSystem entries. I'm wondering why the
> >rewriteSystem entries are there and if they are necessary.
> 
> Hi Mike,
> 
> The only reason I put them in there is because there was a time when 
>  libxml2/libxslt didn't support uri elements, and so the system 
> elements were required. IIRC, someone even filed a bug because of 
> this. In fact, I submitted editorial patches to the XML Catalogs 
> spec that clarified this very point, so I do grok the issue you raise.
> 
> I do understand the difference between a URI and a SYSTEM identifier 
>  as defined in Production 70 of the XML spec, I was simply trying 
> to play it "safe".
> 
> I know that it's also an improper implementation of the XML catalogs 
> spec, too. I filed a bug against libxml2 a long time ago & I believe 
> it now properly supports the uri element.
> 
> I'll fix the catalogs when I do the next update, as I'm sure someone 
> will find another bug. For now, the extra "system" entry doesn't 
> really do any harm.
> 
> Thanks for pointing it out, though.
> 
> Cheers,
> Mark
> 
> >
> >The only circumtance in which I could see them being needed was
> >if someone wanted to define an entity in a DTD subset in a
> >document instance (not an XSLT stylesheet) and reference that
> >entity in the document instance (as a way of including the entire
> >stylesheet in the document). That doesn't seem to me like
> >something most people (or maybe, anybody) would ever want to do.
> >
> >In the case of XSLT stylesheets, they always use the URI as the
> >value on an import or include statement, right? So the
> >rewriteSystem catalog entries are never used.
> >
> >  --Mike
> 



Reply to: