OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

docbook-apps message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: resolving catalogs on Windows


It really doesn't seem to be easy to get a catalog system running on 
Windows. I studied the instructions of Bob's DocBook guide (which look 
very detailed to me) and attempted to get whole thing running with saxon 
or xsltproc.

*SAXON*
I use saxon  with the -u switch,  -Dxml.catalog.prefer='public' and the 
resolver.jar from the 2.6.2 distro of xerces (should be recent enough?). 
In my catalog (D:/DocBook/catalog.xml) I've set "file:///d:/DocBook/" as 
xml:base. The DocType declaration uses no relative system identifier.

    <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN
    "file:///d:/DocBook/dtds/docbkx4.2/docbookx.dtd"
    [
    <!ENTITY % xinclude SYSTEM "file:///D:/docbook/dtds/xinclude.mod">
    %xinclude; ....

And yes, the resolving process works :-) , but the rest doesn't come to 
a good end :-(

 >>>>>

    ....
    Processing file://D:/LHM/Doku/Spec/AdminTool/edit/admin.xml
    Loading org.apache.xml.resolver.tools.ResolvingXMLReader
    Building tree for file://D:/LHM/Doku/Spec/AdminTool/edit/admin.xml
    using class com.icl.saxon.tinytree.TinyBuilder
    Error
      Failure reading file://D:/LHM/Doku/Spec/AdminTool/edit/admin.xml: D
    Transformation failed: Run-time errors were reported

<<<<<<

If I don't use the resolver, my document produces no errors. xmllint too 
doesn't report errors. So what is wrong with the resolver?

*XSLTPROC*
(libxslt 10112 was compiled against libxml 20615
libexslt 810 was compiled against libxml 20615)

With xsltproc, the same catalogs are running, and I get but I have 2 
other restrictions:

(a)

if I omit the system identifier completely,

    <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
    [
    <!ENTITY % xinclude SYSTEM "file:///D:/docbook/dtds/xinclude.mod">
    %xinclude; ....


the processor complains about

    admin.xml:6: parser error : SystemLiteral " or ' expected
    [
    ^
    admin.xml:6: parser error : SYSTEM or PUBLIC, the URI is missing
    [
    ^
    admin.xml:8: parser warning : PEReference: %xinclude; not found
    %xinclude;
              ^

Omitting the system idenitfier is valid, or am I wrong?

(b)

it seems, that it is not possible to use spaces in the filenames that 
appear in catalog files. xsltproc *crashes* with the following message 
as last output on the console:

    file:///D:/DocBook/catalog.xml:0: element uri: Catalog error : uri
    entry 'uri' broken ?: file:///C:/Dokumente und
    Einstellungen/schmitz/styleDrivers/cDocBookHTML.xsl

this behavior vanishes, if I make the entry in the catalog file in the 
following style:

    file:///C%3A/Dokumente%20und%20Einstellungen/schmitz/styleDrivers/cDocBookHTML.xsl

But this is not really user friendly; is there an alternative?

Thanks for any advices,
Georges



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]