xsl-list
[Top] [All Lists]

parameters - element vs attributes

2004-06-03 07:12:26
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>


<Prev in Thread] Current Thread [Next in Thread>