RE: Processing DocBook with Calabash: 'exslt' error "Cannot find a matching 1-argument function named {http://exslt.org/common}node-set()"

Hi Graeme,

Probably not much help, but I remember that things changed regarding
extension functions between 9.1 and 9.2. It essentially comes down to the
fact that extensions are no longer registered automatically for you,
unless you get a paid license of Saxon. That also explains why it works
fine with Saxon EE in oXygen, but doesn't with Saxon HE in oXygen.

It should be possible to run Calabash with a PE or EE edition of Saxon.
Not sure what needs to be done to make it work as you like with Saxon HE..

Cheers,
Geert

> -----Oorspronkelijk bericht-----
> Van: graeme@heliocentrik.net [mailto:graeme@heliocentrik.net]
> Verzonden: maandag 2 december 2013 13:07
> Aan: xproc-dev@w3.org
> Onderwerp: Processing DocBook with Calabash: 'exslt' error "Cannot find
a
> matching 1-argument function named {http://exslt.org/common}node-set()"
>
> Hi all,
> Apologies that this is a processor-specific question (relating to
> Calabash), but I couldn't find a comparable mailing list which was
> specific to Calabash.
>
> I'm processing DocBook files with an XProc pipeline. My issue is that
> when I invoke the DocBook 1.78.0 XSL stylesheets' 'assemble.xsl' file, I
> get an 'exslt' error indicating that a required extension function could
> not be found. The error is as follows:
>
> Dec 02, 2013 11:53:58 AM
> com.xmlcalabash.util.DefaultXProcMessageListener error
> SEVERE:
> file:/[...]/docbook/assembly/assemble.xsl:552:err:XTDE1425:Cannot find a
> matching 1-argument function named {http://exslt.org/common}node-set().
> There is no Saxon extension function with the local name node-set
>
> I understand from Bob Stayton [1] that this is a by-product of trying to
> invoke the DocBook stylesheets (which are XSLT 1.0) with Saxon 9 HE,
> which is an XSLT 2.0 processor.
>
> However, when I run the pipeline from within oXygen, which embeds Saxon
> EE, the DocBook stylesheets run quiet happily. Modifying oXygen's config
> to force it to use HE causes the error to appear there as well.
>
> My XSLT step looks like this:
>
> <p:xslt name="assemble-docbook">
>                 <p:input port="stylesheet">
>                     <p:document
>                     href="../target/generated-
> resources/docbook/assembly/assemble.xsl"/>
>                 </p:input>
>                 <p:input port="parameters">
>                     <p:empty/>
>                 </p:input>
>                 <p:with-option name="version" select="1.0" />
>             </p:xslt>
>
> I wonder if anyone could clarify whether a stock installation of
> Calabash, with Saxon HE, can be cajoled into running the DocBook
> stylesheets correctly. I've tried adding the '-X use-xslt-10' flag to
> the command without any success.
>
> I need to be able to run the pipeline from the shell (or maybe even on
> the web) on boxes where I won't have a licence for Saxon EE.
>
> I'm running Calabash 1.0.15 and Saxon 9.5.1.1 HE.
>
> Thanks in advance for any assistance.
>
> Graeme
>
> [1]
> https://lists.oasis-open.org/archives/docbook-apps/201311/msg00043.html
>

Received on Monday, 2 December 2013 21:50:39 UTC