Re: [xsl] Testing for certain combinations

Subject: Re: [xsl] Testing for certain combinations
From: Oleg Tkachenko <olegt@xxxxxxxxxxxxx>
Date: Thu, 08 Nov 2001 15:19:42 +0200
Neil Abraham wrote:


I need a way of testing whether or not I have 3 or more <a> links separated
only by <br/> tags within a <p>.  This is hard to explain so here are some
examples:



This should test positive:

<p>
<a href="urlwhatever">Labelwhatever</a><br/>
<a href="urlwhatever">Labelwhatever</a><br/>
<a href="urlwhatever">Labelwhatever</a><br/>
</p>


This should test negative since there are only 2 links:


<p>
<a href="urlwhatever">Labelwhatever</a><br/>
<a href="urlwhatever">Labelwhatever</a><br/>
</p>


This should also test negative since it contains text outside of <a>:


<p>
See our great <a href="urlwhatever">products</a> or read
<a href="urlwhatever">about us</a>. Feel free to
<a href="urlwhatever">contact us</a> any time.
</p>




Stupid solution I only see is
<xsl:choose>
<xsl:when test="name(child::*[1]) = 'a' and name(child::*[2]) = 'br' and name(child::*[3]) = 'a' and name(child::*[4]) = 'br' and name(child::*[5]) = 'a' and name(child::*[6]) = 'br' and
and count(*) = 6">Ok</xsl:when>
<xsl:otherwise>Error</xsl:otherwise>
</xsl:choose>



-- Oleg Tkachenko Multiconn International, Israel


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



Current Thread