Subject: RE: parameters - element vs attributes
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Thu, 3 Jun 2004 17:10:48 +0100
|
The construct you are looking for (you're not the first) is
*[name()=$param]
which selects all child elements whose name is equal to $param.
Michael Kay
> -----Original Message-----
> From: stephen.peterson@xxxxxxxxxxxxx
> [mailto:stephen.peterson@xxxxxxxxxxxxx]
> Sent: 03 June 2004 14:12
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: parameters - element vs attributes
>
> Hi there,
> I'm kind of new to XML and I'm trying to figure out how I can use a
> parameter (theLinkGroup) to select an element when used in
> another template.
> I have used it (a parameter in another template) to select an
> element based
> on the value of it's attribute before. But I keep getting a
> error about
> "NodeTest expected here" and showing me the beginning of my select
> statement.
>
> In the past I have used a parameter called "themeSubject" and
> used it in
> another template to select an element with the attribute
> having the smae
> value of the parameter. An it worked fine. <e.g.> <xsl:with-param
> name="themeSubject" select="'GIS'"/> ... in other template
> ... <xsl:for-each
> select="//siteLinkList/link[themeType/item=$themeSubject]">
> </e.g.>
>
> Can someone point me to a resource that will explain this to
> me? I know
> there are some restrictions on what you can do with
> parameters and paths.
>
> Many thanks,
> MNR Steve
>
>
> Here is most of my current code....
>
> <xsl:template match="/">
> <xsl:call-template name="siteLinks">
> <xsl:with-param name="theLinkGroup"
> select="'siteLinkList'"/> <!--
> parameter
> </xsl:call-template>
> </xsl:template>
>
> <!-- other templates -->
> <!-- other templates -->
>
> <xsl:template name="siteLinks">
> <xsl:param name="theLinkGroup"></xsl:param>
> <h2><xsl:value-of select="$theLinkGroup" /></h2>
> <!----- does
> work
> <ul class="xsmall">
> <xsl:for-each select="//$theLinkGroup/link">
> <!-----
> won't work
> <li><a>
> <xsl:attribute name="href"><xsl:value-of
> select="url"/></xsl:attribute>
> <xsl:value-of select="@title"/>
> </a></li>
> </xsl:for-each>
> </ul>
> </xsl:template>
>
> --+------------------------------------------------------------------
> 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@xxxxxxxxxxxxxxxxxxxxxx>
> --+--
>
>
|