This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
RE: Link Generation using keys
- To: <xsl-list at lists dot mulberrytech dot com>
- Subject: RE: [xsl] Link Generation using keys
- From: "Michael Kay" <michael dot h dot kay at ntlworld dot com>
- Date: Mon, 12 Nov 2001 13:55:56 -0000
- Reply-to: xsl-list at lists dot mulberrytech dot com
> 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