xsl-list
[Top] [All Lists]

RE: substitute variable value into xpath expression - problem

2005-04-11 07:29:10
Variables represent run-time values, not compile-time strings that can be
textually substituted into an XPath expression. Use 

  msxml:node-set(..)/*[name()=$XML_PARENT]/*[name()=$XML_CHILD]

Michael Kay
http://www.saxonica.com/ 

-----Original Message-----
From: Hardy Merrill [mailto:HMerrill(_at_)dhcr(_dot_)state(_dot_)ny(_dot_)us] 
Sent: 11 April 2005 15:19
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] substitute variable value into xpath 
expression - problem

This is using MSXSL4.

near the top of the stylesheet
*------------------------------------
<xsl:variable name="XML_PARENT" select="'training_types'" />
<xsl:variable name="XML_CHILD" select="'training_type'" />

down in the body
*--------------------
<xsl:for-each 
select="msxsl:node-set($TRAINING_TYPE_XMLDOC)/$XML_PARENT/$XML_CHILD">

The TRAINING_TYPE_XMLDOC is fine - it's the XML_PARENT and 
XSL_CHILD that I'm having trouble with.  All I'm really 
trying to do is substitute in the literal values of the 
XSL_PARENT and XSL_CHILD into the XPath select.  Here is the 
error I'm getting:

*------------------
NodeTest expected here. 
msxsl:node-set($TRAINING_TYPE_XMLDOC)/-->$<--XML_PARENT/$XML_CHILD 
*------------------

I'm sure it's something stupid I'm doing/not doing - please 
let me know what it is.

Thanks.

Hardy Merrill


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--





--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



<Prev in Thread] Current Thread [Next in Thread>