I'm running Saxon in command line mode. I'm repeatedly processing a large XML file to extract sub-segments of it to HTML files, all structurally identical but differing in the node they process. Rather than have dozens of style sheets, I'm running a generic stylesheet and passing the XLPath expression in as a parameter (and declaring it within the stylesheet with an <xsl:param> element). For example:
 
saxon some.xml some.xsl SelectPath="PUBS-DOC/BODY/SECT1[TITLE='Corporate Structure']"
 
Then using it an apply-template element:
 
<xsl:apply-templates select="$SelectPath"/>
 
However, this gives an error: The value is not a node-set.
 
It works if the same path expression is hardcoded into the stylesheet. The parameter is being handled correctly because it can be retrieved with an <xsl:message> element. Any ideas why it can't be handled? I'd be grateful for suggestions. With any luck I'm missing something really smple.

Robin Davidson
IMS HEALTH
Database Manager
Tel: +44 (0) 20 7393 5313
Fax: +44 (0) 20 7393 5900