[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: variable in xsl:template match

Subject: Re: variable in xsl:template match
From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx>
Date: Thu, 26 Apr 2007 10:41:18 -0400
Re:  variable in xsl:template match
Variables are not allowed to be used in the match attribute of a template.

Ref. XSLT 1.0 section 5.3:

  It is an error for the value of the match attribute to contain
  a VariableReference.

You will have to match on a more general expression and then do a variable test within the template rule. Using a layered stylesheet with <xsl:import> you can match on the general expression in the importing stylesheet, and if the variable tests false do an <xsl:apply-imports/> to use the imported stylesheet.

Alternatively you could engage modes and re-apply the generally-matched node in a mode in order to engage other template rules.

I hope this helps.

. . . . . . . . . Ken

At 2007-04-26 10:35 -0400, Steve wrote:
/root/node()[name() = $target]/child

On 4/26/07, Garvin Riensche <g.riensche@xxxxxxx> wrote:
Hello,

Im am wondering if it is possible to pass an xpath expression (or part
of it) from the commandline to the match attribute of a template.

What I am thinking about is something like to following. If I call the
parser with

saxon target=position input.xml styleshee.xsl

And I have a template with something similar to

<xsl:template match="/root/$target/child">

I want the Xpath expression to be evaluated as "/root/position/child".

Any help will be appreciated.

Regards,
Garvin


--
World-wide corporate, govt. & user group XML, XSL and UBL training
RSS feeds:     publicly-available developer resources and training
G. Ken Holman                 mailto:gkholman@xxxxxxxxxxxxxxxxxxxx
Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/s/
Box 266, Kars, Ontario CANADA K0A-2E0    +1(613)489-0999 (F:-0995)
Male Cancer Awareness Aug'05  http://www.CraneSoftwrights.com/s/bc
Legal business disclaimers:  http://www.CraneSoftwrights.com/legal

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.