Is it possible to specify a parameter of a named template as the match pattern in another template?

Here, if I try to call the 'excerpt' template and pass in an XPath as the 'path' param, I get an error:

```
<xsl:template name="excerpt">
    <xsl:param name="path" select="''" />
    <xsl:apply-templates select="$path" />
</xsl:template>

<xsl:template match="$path">
    <article class="newsarticle">
        <h2><a href="{$root}/news/view/{title/@handle}"><xsl:value-of select="title" /></a></h2>
        <xsl:copy-of select="excerpt/node()" />
    </article>
</xsl:template>

```

I can accomplish it with `<xsl:for-each>`, but I wondered if there was a good solution using something similar to the approach above.

**Edit:** here's what I'm trying to accomplish, working with a `<xsl:for-each>`:

```
<xsl:template name="excerpt">
    <xsl:param name="path" select="''" />
    <xsl:for-each select="$path">
        <article class="newsarticle">
            <h2><a href="{$root}/news/view/{title/@handle}"><xsl:value-of select="title" /></a></h2>
            <xsl:copy-of select="excerpt/node()" />
        </article>
    </xsl:for-each>
</xsl:template>

```

**Edit:** an example of calling the template:

```
<xsl:call-template name="excerpt">
    <xsl:with-param name="path" select="path/to/nodeset" />
</xsl:call-template>

```