Hi,
Is the answer to simply rewrite the SYSTEM identifier in the DOCTYPE declaration?
Yep, that'll work.
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook HTML Forms Module V1.1//EN" "dbforms.dtd"!>
Since you're using XML, it gets even easier: you can ditch the PUBLIC identifier altogether and simply use a DOCTYPE declaration like:
<!DOCTYPE article SYSTEM "path-to-dtd">
THe 'file://' prefix is probably optional, depending on what parser you're using. Try it with/without the file:// part until it works for you.
Hope that helps.
Cheers, Mark
This seems to force a match on the PUBLIC identifier. Now, the -nonet switch doesn't produce any errors.
Thanks, jec
--- Jeff Chimene <[EMAIL PROTECTED]> wrote:
Hi,
I'd like to prevent docbookx.dtd from being referenced via http:// It looks like I can reference
docbookx via file://. However, here is a <trimmed> log from a recent run where XML_DEBUG_CATALOG=1 showing that the catalog resolution occurs via the network, not locally.
Resolve: pubID -//OASIS//DTD DocBook HTML Forms Module V1.1//EN sysID
http://www.oasis-open.org/docbook/xml/htmlforms/1.1/dbforms.dtd
16384 Parsing catalog file:///etc/xml/catalog file:///etc/xml/catalog added to file hash file:///etc/xml/docbook-html-forms.xml not found in file hash 16384 Parsing catalog file:///etc/xml/docbook-html-forms.xml file:///etc/xml/docbook-html-forms.xml added to file hash Trying system delegate file:///etc/xml/docbook-html-forms.xml
file:///usr/share/xml/docbook/custom/html-forms/1.1/catalog.xml
not found in file hash 16384 Parsing catalog
file:///usr/share/xml/docbook/custom/html-forms/1.1/catalog.xml
file:///usr/share/xml/docbook/custom/html-forms/1.1/catalog.xml
added to file hash Trying system delegate
file:///usr/share/xml/docbook/custom/html-forms/1.1/catalog.xml
Found system match
http://www.oasis-open.org/docbook/xml/htmlforms/1.1/dbforms.dtd
Resolve: pubID -//OASIS//DTD DocBook XML V4//EN sysID
http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd
file:///etc/xml/docbook-xml.xml not found in file hash 16384 Parsing catalog file:///etc/xml/docbook-xml.xml file:///etc/xml/docbook-xml.xml added to file hash Trying system delegate file:///etc/xml/docbook-xml.xml
file:///usr/share/xml/docbook/schema/dtd/4.1.2/catalog.xml
not found in file hash 16384 Parsing catalog
file:///usr/share/xml/docbook/schema/dtd/4.1.2/catalog.xml
file:///usr/share/xml/docbook/schema/dtd/4.1.2/catalog.xml
added to file hash Trying system delegate
file:///usr/share/xml/docbook/schema/dtd/4.1.2/catalog.xml
Found system match
http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd
Writing ar01s02.html for section Writing ar01s03.html for section(MenuDescriptions) Writing ar01s04.html for section Writing index.html for article Catalogs cleanup <snip>
As you can see, the "system match" happens via http:// instead of file://
Thank-you in advance for your support!
Cheers, Jeff Chimene
I sent the following message to the XSLT list. It was probably the wrong list.
--- Jeff Chimene <[EMAIL PROTECTED]> wrote:
Date: Mon, 22 Nov 2004 06:43:08 -0800 (PST) From: Jeff Chimene <[EMAIL PROTECTED]> To: [EMAIL PROTECTED] Subject: [xslt] XSLTPROC, nonet switch and catalog processing
Hi,
I cannot seem to get xsltproc to honor the -nonet switch.
Here is the version:
$ xsltproc -V Using libxml 20611, libxslt 10108 and libexslt 806 xsltproc was compiled against libxml 20611,
libxslt
10108 and libexslt 806 libxslt 10108 was compiled against libxml 20611 libexslt 806 was compiled against libxml 20611
My XML catalog (/etc/xml/catalog) has the
following
entries:
<delegatePublic publicIdStartString="-//OASIS//DTD
DocBook HTML Forms Module"
catalog="file:///etc/xml/docbook-html-forms.xml"/> <delegateSystem
systemIdStartString="http://www.oasis-open.org/docbook/xml/htmlforms/"
catalog="file:///etc/xml/docbook-html-forms.xml"/>
I use the following doctype:
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook
HTML
Forms Module V1.1//EN"
"http://www.oasis-open.org/docbook/xml/htmlforms/1.1/dbforms.dtd">
Yet XSLTPROC produces the following output when I use the -nonet switch:
I/O error : Attempt to load network entity
http://www.oasis-open.org/docbook/xml/htmlforms/1.1/dbforms.dtd
release-notes.xml:10: warning: failed to load external entity
"http://www.oasis-open.org/docbook/xml/htmlforms/1.1/dbforms.dtd"
It looks to me like the DTD declaration matches
the
catalog. What concept am I missing? In other
words,
why don't the DTDs get loaded locally?
Would I be better served switching to Relax NG?
IOW,
does the library not like a combination of DTD and
XML? I use XEmacs to create the document, its XML mode is quite helpful. However, I can switch to
the
Relax NG DocBook schema & Emacs if that conversion would solve this (admittedly minor) problem.
Thank-you in advance for your help.
Jeff Chimene
__________________________________ Do you Yahoo!? Yahoo! Mail - Helps protect you from nasty viruses. http://promotions.yahoo.com/new_mail
_______________________________________________ Debian-xml-sgml-devel mailing list [EMAIL PROTECTED] http://lists.alioth.debian.org/mailman/listinfo/debian-xml-sgml-devel
-- ____________________________________________________________ Mark Johnson <[EMAIL PROTECTED]> Debian XML/SGML: <http://debian-xml-sgml.alioth.debian.org> Home Page: <http://dulug.duke.edu/~mark/> GPG fp: DBEA FA3C C46A 70B5 F120 568B 89D5 4F61 C07D E242
-- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

