This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: Link Generation using keys


> Within a template want to generate links using key values like below:
> <xsl:template name="x">
>  <xsl:param name="id" select="1" />
>  <xsl:for-each select="key('ids', $id)">
>  <xsl:element name="a">
>   <xsl:attribute name="href"><xsl:value-of
> select="id"/></xsl:attribute>
>   <xsl:text><xsl:value-of select="title"/></xsl:text>
>  </xsl:element>
> ...
> </xsl:template>
>
> This does not work - there are no links generated; what would
> be the proper way  to access the values ?

If this isn't generating any <a> elements, then key('ids',$id) isn't
selecting any nodes, and there's no way of telling why without seeing your
key definition and your source document.

incidentally, you could rewrite the above as

<xsl:template name="x">
 <xsl:param name="id" select="1" />
 <xsl:for-each select="key('ids', $id)">
   <a href="{id}"><xsl:value-of select="title"/></a>
 ...
</xsl:template>

which some people would find more readable...

Mike Kay


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]