p:xslt parameters and default namespaces

Hi.

I've come across a curious behavior in p:xslt. Try this pipeline:

<?xml version="1.0" encoding="UTF-8"?>
<p:pipeline xmlns:p="http://www.w3.org/ns/xproc" version="1.0" name="main"
xmlns="http://example.net/">
    <p:xslt>
        <p:input port="source">
            <p:inline>
                <doc/>
            </p:inline>
        </p:input>
        <p:with-param name="param-name" select="'param-value'"/>
        <p:input port="stylesheet">
            <p:inline>
                <xsl:stylesheet xmlns:xsl="
http://www.w3.org/1999/XSL/Transform" version="2.0">
                    <xsl:param name="param-name" required="yes"/>
                    <xsl:template match="/*">
                        <doc value="{$param-name}"/>
                    </xsl:template>
                </xsl:stylesheet>
            </p:inline>
        </p:input>
    </p:xslt>
</p:pipeline>

It gives out "Underlying exception: net.sf.saxon.trans.XPathException: No
value supplied for required parameter param-name".

However, if I remove the xmlns="http://example.net/", it gives out the
expected <doc value="param-value"/>.

I'm using Calabash 0.9.32, but I suspect that Saxon is the culprit...

Regards
Jostein

Received on Wednesday, 17 August 2011 10:37:10 UTC