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: How to use Calabash with the DocBook XSL1.0 Stylesheets?


Hi,

for my project on Sourceforge[1], I've played with XProc and Calabash. Love 
them. :)

I've created a small pipeline to transform my DocBook5 sources into HTML. 
However, there is only one issue, I didn't find a solution yet. As Calabash 
uses Saxon9, it seems all(?) XSLT steps fail with the DocBook XSLT 1.0 
stylesheets.

Consider the following pipeline:

--------------------[ db-chunk.xpl ]---------------------
<p:declare-step version="1.0" name="db2xhtml-chunk"
  xmlns:db="http://docbook.org/ns/docbook";
  xmlns:p="http://www.w3.org/ns/xproc";>

  <p:input port="source" primary="true">
    <p:document href="en/xml/DoCookbook.xml"/>
  </p:input>
  <p:output port="result" sequence="true"/>
  
  <p:xinclude name="xinclude"/>
  
  <p:namespace-rename name="db5-ns-remove"
    from="http://docbook.org/ns/docbook"; to=""/>
  
  <p:xslt name="chunking" version="1.0">
    <p:input port="stylesheet">
      <p:document href="frameworks/db-xslt/xhtml/chunk.xsl"/>
    </p:input>
    <p:input port="parameters"><p:empty/></p:input>
  </p:xslt>
  
</p:declare-step>
---------------------------------------------------------

(I suspect, this pipeline is not entirely correct (sequences?), but that's 
another story.)

I've successfully used Calabash with other pipelines. However, when I try to 
run the above pipeline, I get this error message:

$ calabash -D db2xhtml-chunk.xpl
Dec 30, 2011 1:13:48 PM com.xmlcalabash.util.DefaultXProcMessageListener info
INFO: Running pipeline db2xhtml-chunk
Dec 30, 2011 1:13:48 PM com.xmlcalabash.util.DefaultXProcMessageListener info
INFO: Running xinclude xinclude
Dec 30, 2011 1:13:49 PM com.xmlcalabash.util.DefaultXProcMessageListener info
INFO: Running namespace-rename db5-ns-remove
Dec 30, 2011 1:13:49 PM com.xmlcalabash.util.DefaultXProcMessageListener info
INFO: Running xslt chunking
Don't know how to chunk with SAXON 9.3.0.4 from Saxonica
Dec 30, 2011 1:13:58 PM com.xmlcalabash.util.DefaultXProcMessageListener error
SEVERE: Processing terminated by xsl:message at line 51 in chunker.xsl
Dec 30, 2011 1:13:58 PM com.xmlcalabash.drivers.Main error
SEVERE: Pipeline failed: net.sf.saxon.s9api.SaxonApiException: Processing 
terminated by xsl:message at line 51 in chunker.xsl
Dec 30, 2011 1:13:58 PM com.xmlcalabash.drivers.Main error
SEVERE: Underlying exception: net.sf.saxon.expr.instruct.TerminationException: 
Processing terminated by xsl:message at line 51 in chunker.xsl
net.sf.saxon.s9api.SaxonApiException: Processing terminated by xsl:message at 
line 51 in chunker.xsl
        at net.sf.saxon.s9api.XsltTransformer.transform(Unknown Source)
        at com.xmlcalabash.library.XSLT.run(Unknown Source)
        at com.xmlcalabash.runtime.XAtomicStep.run(Unknown Source)
        at com.xmlcalabash.runtime.XPipeline.doRun(Unknown Source)
        at com.xmlcalabash.runtime.XPipeline.run(Unknown Source)
        at com.xmlcalabash.drivers.Main.run(Unknown Source)
        at com.xmlcalabash.drivers.Main.main(Unknown Source)
Caused by: net.sf.saxon.expr.instruct.TerminationException: Processing 
terminated by xsl:message at line 51 in chunker.xsl
[...]

Around line 51 in chunker.xsl:

47: <xsl:template name="make-relative-filename">
48:  <xsl:param name="base.dir" select="'./'"/>
49:   <xsl:param name="base.name" select="''"/>
50:
51:  <xsl:choose>
52:    <!-- put Saxon first to work around a bug in libxslt -->
53:    <xsl:when test="element-available('saxon:output')">
54:      <!-- Saxon doesn't make the chunks relative -->
55:      <xsl:value-of select="concat($chunk.base.dir,$base.name)"/>
56:    </xsl:when>
[...]


Well, I assume this has something to do that Saxon9 doesn't support the 
exsl:document or saxon:output extensions anymore. Unfortunately, this makes 
the combination XProc + Calabash + Saxon9 + DocBook XSLT1.0 unusable. It 
seems, it doesn't help to add the Saxon6 jar into the classpath.

Can anybody confirm this behaviour? Is there any method to delegate an XSLT 
step for version 1.0 to Saxon 6? Has anybody successfully used Calabash with 
the DocBook XSLT 1.0 stylesheets?

Probably I miss some important piece. Any ideas are highly appreciated. :)


Thanks,
  Tom

---- 
[1] http://sf.net/projects/doccookbook/

-- 
Gruß/Regards
  Thomas Schraitle



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