xsl-list
[Top] [All Lists]

RE: Dynamic XPath

2003-05-23 07:48:25
Or to be more obvious:
        <xsl:variable
name="dynamicPath">/document/section/keep/pear</xsl:variable>
Basically I want to be able to change the path from one node to another, for
example
        <xsl:variable name="dynamicPath"><xsl:copy-of
select="//configuration/searchPath" /></xsl:variable>

Which then changes the result of   <xsl:variable name="textContent"
select="{$dynamicPath}/text()" />

i.e. I want the parser to process the {$dynamicPath} and replace it with a
literal string and then excute the search, in effect
         <xsl:variable name="textContent"
select="/document/section/keep/pear/text()" />

-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf Of G. 
Ken Holman
Sent: 23 May 2003 15:19
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: Re: [xsl] Dynamic XPath


At 2003-05-23 15:08 +0100, Philip Fitzsimons wrote:
What I would like to do is:
        <!--<xsl:variable name="dynamicPath" 
select="/document/*[position() = 2]" />-->
        <xsl:variable name="dynamicPath" 
select="/document/section/keep/pear" />
        <xsl:variable name="textContent" 
select="{$dynamicPath}/text()" />

You are not showing what I would call "a dynamic XPath".  Consider:

         <xsl:variable name="dynamicPath"
                      select="/document/section/keep/pear" />
         <xsl:variable name="textContent" select="$dynamicPath/text()" />

I've modified the second instruction above, such that the node-set variable 
named $dynamicPath, which includes the nodes selected by your XPath 
expression in the first insturction, is used to address all the text nodes 
from each.

It is very acceptable to begin an XPath expression with a reference to a 
node-set variable.

What did you mean by "dynamic"?

................. Ken

--
Upcoming hands-on courses: (registration still open!)
-      (XSLT/XPath and/or XSL-FO) North America: June 16-20, 2003

G. Ken Holman                mailto:gkholman(_at_)CraneSoftwrights(_dot_)com
Crane Softwrights Ltd.         http://www.CraneSoftwrights.com/s/
Box 266, Kars, Ontario CANADA K0A-2E0   +1(613)489-0999 (F:-0995)
ISBN 0-13-065196-6                      Definitive XSLT and XPath
ISBN 0-13-140374-5                              Definitive XSL-FO
ISBN 1-894049-08-X  Practical Transformation Using XSLT and XPath
ISBN 1-894049-11-X              Practical Formatting Using XSL-FO
Member of the XML Guild of Practitioners:    http://XMLGuild.info
Male Breast Cancer Awareness http://www.CraneSoftwrights.com/s/bc


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



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