I've got a template that needs to know the if it
contains only 1 of a specific group of tags when it's
within a "content" tag, and I've got this condition to
do this:
count(ancestor::content[1]/child::*[self:tag1 or
self:tag2 or self:tag3 ....]) = 1
Now I need to check for about 15 different tags; is
there a more efficient way to do this sort of check?
Usual comment about the T word, XSLT has no access to the tags in a
dcument, and given
<foo a="b"> stuff</foo>
The content of the tags are 'foo a="b"' and 'foo' respectively.
' stuff' is _between_ two tags, not the content of any tag.
(tags are not the same thing as elements)
probably it would be more efficient to do
<xsl:key name="x" match="tag1|tag2|tag3" use="generate-id(..)"/>
....
<xsl:if test="key('x',generate-id(ancestor::content[1]))[2]">
there's more than one of them
</xsl:if>
David
________________________________________________________________________
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>
--~--