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

Re: rephrased: passing parameters to generic templates

Subject: Re: rephrased: passing parameters to generic templates
From: "andrew welch" <andrew.j.welch@xxxxxxxxx>
Date: Wed, 12 Apr 2006 17:41:48 +0100
Re:  rephrased: passing parameters to generic templates
On 4/12/06, Wendell Piez <wapiez@xxxxxxxxxxxxxxxx> wrote:
> At 06:37 AM 4/12/2006, drkm wrote:
> >andrew welch wrote:
> >
> > > <xsl:template match="a">
> > >   <a href="{ancestor::para/docBase}">.....
> >
> >   I'm not sure, but I think the OP needs "ancestor::para[1]/...",
> >doesn't it?
>
> Not if there's only one (which seems likely). Even if there's more
> than one, when ancestor::para/docBase is turned into a string, the
> value of the first such element in document order is taken.
>
> In XPath 2.0 you could get an error for relying on this, however,
> since in 2.0 a sequence of more than one node can't be converted into
> a string. There, you might be better off forcing it to be the first,
> as in (ancestor::para/docBase)[1].

In an AVT the values get concatenated using a space separator... but
I'm guessing you meant as arguments to functions...

I disagree with your second point though, using (..)[1] should be
avoided as it will hide the fact that you selected multiple nodes when
you only wanted one - this is the real strength of 2.0 over 1.0 - in
1.0 you would only trap this by examining the output, in 2.0 you get
an error.

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.