Garvin Riensche wrote:
Hi Abel,
Thanks a lot for you answer, you gave lots of comments that are
usefull for me.
Your solution defintely serves my needs I explained in my first mail.
But as I wrote in my second mail there might be lots of
attribute-combinations. So I would have to write a template for every
possible combination which would make the stylesheed get very large.
Maybe that's the only solution. But I would prefer a solutions with
one template for all possible combinations like explained in my second
mail with some default value for the variables that are not set by
commandline.
In addition, if you want an extensible solution, you can consider this
as parameter value:
id=2;owner=4;name=john
in which case you do not have to create a new parameter each time you
add a new query possibility to your template. You match would then look
as follows:
<xsl:variable name="attributes" select="tokenize($query, ';')" />
<xsl:variable name="attr-names"
select="for $i in $attributes return tokenize($i, '=')[1]" />
<xsl:variable name="attr-values"
select="for $i in $attributes return tokenize($i, '=')[2]" />
<xsl:template match="class[
deep-equals(@*/name(), $attr-names) and
deep-equals(@*string(), $attr-values)]" />
... do your thing with the matches ...
</xsl:template>
Come to think of it, this is probably a shorter solution in the long run ;)
Happy coding!
-- Abel Braaksma
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--