[xsl] variables/parameters in match of xsl:key, 'ends-with'

Subject: [xsl] variables/parameters in match of xsl:key, 'ends-with'
From: "Daniel Bowen" <dbowen2@xxxxxxxxx>
Date: Tue, 9 Jan 2001 16:41:21 -0700
(The first post didn't seem to make it through for 3 days, so I'm reposting)

Does anyone know if future versions of XSLT will allow variables or
parameters in the "match" attribute of xsl:key?

In particular, I have a parameterized XSLT stylesheet (using xsl:param),
where the param is used to filter what is generated. I'm using keys for
Muenchian style grouping. I can generate keys for more than I want, and
filter later. However, the input can be several MB., so I'd like to restrict
what keys are built for performance reasons. When I hard code equivalent
filters on the key match (instead of using filters that reference a
variable), I do see enough of a performance difference to want to do this!

As a side note. I sure wish there was an "ends-with" string function in
addition to the "starts-with" function. I seem to need it much more often
than "starts-with". I'm imitating "ends-with(source, find)" with

find = substring(source, 1 + string-length(source) - string-length(find))

But for input of several MB., it takes a bit of a hit that it wouldn't if
there was an 'ends-with' function! (yes, I timed the above with a comparable
"contains" and "starts-with" variant). Does anyone have a faster way to
imitate "ends-with"?

-Daniel Bowen
Software Engineer

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

Current Thread