|
Subject: Re: [xsl] most efficient way to check for a group of tags? From: David Carlisle <davidc@xxxxxxxxx> Date: Wed, 2 Mar 2005 22:44:25 GMT |
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
________________________________________________________________________
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] most efficient way to che, Wendell Piez | Thread | [xsl] Problem with converting to XS, Heckel, Matt , Ctr, |
| Re: [xsl] most efficient way to che, Sebastien Boisvert | Date | Re: [xsl] most efficient way to che, David Carlisle |
| Month |