Re: [xslt] I/O error : Is a directory - error processing a DB book with docbook-xsl chunk stylesheet

I'm sorry for the large mail with the attached log. I first attached it
and then decided to upload the logs instead, but forgot to remove the
attachment. Feel free to discard it. This mail comes without an

Am Mittwoch, den 21.11.2007, 18:40 -0500 schrieb Daniel Veillard:
> On Wed, Nov 21, 2007 at 06:55:20PM +0100, Daniel Leidert wrote:
> > Hi libxslt authors,
> > 
> > Some time ago I already reported this issue [1], but it seems I forgot
> > to examine it further. Today I got a private mail about the same problem
> > so I decided to find a testcase to debug the problem and I was able to
> > create a very short example, that fails for me with an I/O.
> > 
> > Can you please be so kind to take a look at it and verify, if it's a bug
> > in libxslt? In this case I would open a bug report. Please follow these
> > steps after saving the attached files:
> > 
> > mkdir built-doc
> > xsltproc --output ./built-doc/ book.xsl book.xml
> > 
> > The result for me is:
> > 
> > Writing ch01.html for chapter
> > Writing index.html for book
> > I/O error : Is a directory
> > I/O error : Is a directory
>   Can you run with -v to see what it is trying to do at that point.

It seems to close everything and then it throws this error. I uploaded
the whole output to [1]. If I run it withpout the --output option and
compare the resultng log to the one, that fails, then I cannot find
compelling differences except, the last lines that differ:

> [..]
> found variable 'generate.manifest'
>  xsltIf: test evaluate to 0
>  Shutting down module :
> -I/O error : Is a directory
> -I/O error : Is a directory
>  freeing transformation dictionary
>  freeing dictionary from stylesheet
>  freeing dictionary from stylesheet
>  freeing dictionary from stylesheet
>  freeing dictionary from stylesheet
> +encoding=UTF-8
> +standalone=true
> +  DTD(html), PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN, SYSTEM

Not sure if that helps. These last 4 lines (prefixed with the '+' here)
seem to be the related to the cause of the problem. Is it related to ...

> > The problem seems to be related to the --output option and the doctype-*
> > attributes of xsl:output, because if you don't use --output option or
> > remove the doctype-* attributes, then the example does not fail.
>   Maybe the doctype-* attributes force the presence of a DTD node so
> the main document is not empty and you get the error, that does not 
> sound wrong. What you want to do is set doctypes for the chunks, and
> that should be done on the exslt:document element and not on the
> main stylesheet output definition.

... this comment? To be honest, docbook-xsl sets the encoding and
doctype values via own parameters, that are then given to the
exslt:document function. So giving the doctype* attributes via
xsl:output is not necessary (and normally done via parameters), but also
not wrong, even for chunked output. But is it a bug, that xsltproc fails
in this case? If not: Should there maybe be a comment (in a LIMITATIONS
section) in the manpage (and other related documentation) about this

(be careful: the logs are about 1.5 MB)

Regards, Daniel

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