← Prev in month ← Prev in thread

Dynamically creating a pattern for xsl:apply-templates select

From
Mark Heieis <>
To
Date
2004-07-29T22:51:07Z
ID
<>
Thread
Dynamically creating a pattern for xsl:apply-templates select
I have some challenges to solve:

I need to parse a string that contains n number of args, which is in the 
form of  "arg1, arg2,...argn". The args define either an attribute or 
element value. The goal is to prune a large tree using the given arguments.

I want to dynamically create a pattern for the following using the above 
input string, such that

    <xsl:apply-template select=path/node[@name=$arg1 or @name=$arg2 or 
@name=$argn]/>

is made to look something like

    ...
    <xsl: variable name="pattern">@name=$arg1 or @name=$arg2 or 
@name=$argn</xsl:pattern>
or
    <xsl: variable name="pattern">@name='$arg1 | $arg2 | 
$argn'</xsl:pattern>
   ....

which would then be used as
    ...
    <xsl:template match='somecondition''>
        <xsl:apply-templates select=path/node[$pattern]/>
   </xsl:template>

The questions are:
Can the select attribute accept pattern defined by a variable? So far I 
haven't been able to make it work.
If yes, how should it be constructed based on the given input string?
If no, what would be an approach to filter a tree based on the given input?
Or even if yes, is there a better way to filter a large tree?

Thanks in advance.
← Prev in month ← Prev in thread