This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: Key/Use


> Excuse my ignorance but, why is this
>
>  <xsl:key name="lookup" match="row"
>  use="concat($TRANSFORMER_SourceCountry,'_layer_name')"/>
>
>  any more useless than?:
>
>  <xsl:key name="lookup" match="row" use="US_layer_name"/>
>
Ignoring my mistake, that variable references are not allowed in the use
expression:

Writing

<xsl:key name="lookup" match="row" use="concat('US','_layer_name')"/>

doesn't mean

<xsl:key name="lookup" match="row" use="US_layer_name"/>

it means

<xsl:key name="lookup" match="row" use="'US_layer_name'"/>

I hope that makes the distinction clear. As we've said many times on this
list, you can't construct XPath expressions from strings. In simple cases
you can use the circumvention:

<xsl:key name="lookup" match="row"
use="*[name()=concat('US','_layer_name')]"/>

... but you're still stymied because you can't use variables.

Mike Kay


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]