But you cant do that with keys ... can you?
related to the parallel thread re xslt1/xslt2, just a note that you can
do this fairly easily with keys in xslt2 as you can get more
expressivity into the use attribute of xsl:key.
<x>
<post tag="reference xml" href="..." />
<post tag="reference xml xslt" href="..." />
<post tag="reference xml css" href="..." />
<post tag="reference html" href="..." />
<post tag="reference html 1" href="..." />
<post tag="reference html 2" href="..." />
<post tag="reference html 3rip" href="..." />
<post tag="reference html 3.2" href="..." />
<post tag="reference html 4" href="..." />
<post tag="linux" href="..." />
</x>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:output method="xml" indent="yes" />
<xsl:key name="t" match="post" use="for $i in (1 to count(tokenize(@tag,' +')))
return
string-join(tokenize(@tag,' +')[position()<=$i],' ')"/>
<xsl:template match="/">
1 reference xml
<xsl:copy-of select="key('t','reference xml')"/>
2: linux
<xsl:copy-of select="key('t','linux')"/>
3: reference
<xsl:copy-of select="key('t','reference')"/>
4: reference html
<xsl:copy-of select="key('t','reference html')"/>
4: reference html 4
<xsl:copy-of select="key('t','reference html 4')"/>
</xsl:template>
</xsl:stylesheet>
$ saxon8 keys.xml keys.xsl
<?xml version="1.0" encoding="UTF-8"?>
1 reference xml
<post tag="reference xml" href="..."/>
<post tag="reference xml xslt" href="..."/>
<post tag="reference xml css" href="..."/>
2: linux
<post tag="linux" href="..."/>
3: reference
<post tag="reference xml" href="..."/>
<post tag="reference xml xslt" href="..."/>
<post tag="reference xml css" href="..."/>
<post tag="reference html" href="..."/>
<post tag="reference html 1" href="..."/>
<post tag="reference html 2" href="..."/>
<post tag="reference html 3rip" href="..."/>
<post tag="reference html 3.2" href="..."/>
<post tag="reference html 4" href="..."/>
4: reference html
<post tag="reference html" href="..."/>
<post tag="reference html 1" href="..."/>
<post tag="reference html 2" href="..."/>
<post tag="reference html 3rip" href="..."/>
<post tag="reference html 3.2" href="..."/>
<post tag="reference html 4" href="..."/>
4: reference html 4
<post tag="reference html 4" href="..."/>
________________________________________________________________________
This e-mail has been scanned for all viruses by Star. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________
--~------------------------------------------------------------------
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(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--