I’m using version of Saxon and I have written a stylesheet that gets included into my main XSLT utilizing the saxon:evaluate function to dynamically create an xpath as follows:


<xsl:variable name="resolvedParam"  select="concat('//results/row[',$rowID,']/',$nextParamValue)"/>

<xsl:value-of select="saxon2:evaluate($resolvedParam)"/>


This is in a recursive template and builds a url and appends parameters to the end of the string i.e www.mysite.com?param1=fred&param2=sue etc..


At the top of the included stylesheet I have the declaration:


<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:saxon2="http://saxon.sf.net/" element-prefixes="saxon" exclude-result-prefixes="saxon">


This works fine….



However I am now trying to write another template within the same stylesheet to resolve another xpath as follows:


  <xsl:template name="evaluatexpath">

    <xsl:Param name="xpath"/>

    <xsl:value-of select="saxon2:evaluate($xpath)"/>



Unfortunately this produces the error:


“Cannot find the script or external object that implements prefix 'http://saxon.sf.net/'.”


I am totally confused, why would it work for one and not the other?


Also this is not the first time I have tried to do more than one saxon:evaluate and met with failure. The previous time is was adding another saxon:evaluate to the first template above.


Can anyone help me please? I hope I’ve given you enough information.




The Moneyfacts Awards Luncheon takes place on Friday 8 June at the Brewery in London. To celebrate with the UK's leading personal finance providers call Nita on 0870 2250 538 to discuss your table booking.

E-mail Disclaimer: This e-mail message contains confidential information and is intended only for the individual entity or organisation named. If you are not the named addressee you should not disseminate, distribute, print or copy this e-mail and/or attachments (either whole or partial). To do so may constitute a breach of confidence and/or privilege. Please notify the sender immediately by e-mail if you have received this e-mail by mistake and delete this e-mail permanently from your system. E-mail transmissions cannot be guaranteed to be secure or error-free as information could be intercepted, corrupted, lost, destroyed, maliciously altered, arrive late or incomplete, or contain viruses. The sender therefore does not accept liability for any errors or omissions in the contents of this message, which arise as a result of e-mail transmission. If verification is required please request a hard-copy version. Please note that any views or opinions presented in this e-mail are those of the author and do not necessarily represent those of Moneyfacts Group plc or their affiliates. Whilst every step is taken to ensure e-mails are virus free when they leave Moneyfacts Group systems, we accept no liability for any damage caused by any virus received.

This outbound message has been scanned for viruses by MailControl for Moneyfacts Group plc.