RE: [xsl] counting number of occurances in elements

Subject: RE: [xsl] counting number of occurances in elements
From: "Sharma, Jaikumar" <jaikumar.sharma@xxxxxxxxx>
Date: Sat, 11 Aug 2007 20:55:08 +0530
Thanks Michael,

Example :

		<root>
		    <sub-root>
			<element>test123</element>
			<element>test145</element>
			<element>test129</element>
			<element>test145</element>
			<element>test129</element>
		   </sub-root>
		</root>


I want to count total number of occurances having '145' under sub-root
node, which I am doing like following :

		<xsl:template match="/">
		   <xsl:apply-templates select="root/sub-root" />
		</xsl:template>

		<xsl:template match="sub-root">
		     <xsl:varialbe name="elements.count"
select="count(substring(element,5,3)='145')"/>
		     <xsl:value-of select="$element.count" />
		</xsl:template>


The above gives me the error 'Expression doest not return a DOM node' .

I am not sure what wrong I am doing here ?

Regards.



-----Original Message-----
From: Michael Kay [mailto:mike@xxxxxxxxxxxx]
Sent: Saturday, August 11, 2007 8:41 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: RE: [xsl] counting number of occurances in elements

I'm afraid it's not clear to me either from your English description or
from your incorrect code exactly what you are trying to achieve (Or more
accurately, the guess I would make from your English description would
have no mention of any variable called $compiler.warn.loc, so I assume
it would probably be wrong). An example of input and output would help.

Michael Kay
http://www.saxonica.com/

> -----Original Message-----
> From: Sharma, Jaikumar [mailto:jaikumar.sharma@xxxxxxxxx]
> Sent: 11 August 2007 14:41
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] counting number of occurances in elements
>
> I want to count number of occurances in elements in under a particular

> node in XML document and store the value of same in a variable :
>
> <xsl:variable name="compiler.warn.count"
> select="count(substring($compiler.warn.loc,2,5)='WARNING')" />
>
> But I get the following error message when try to see the results in
> browser :
>
> Expression does not return a DOM
> node.-->count(substring($compiler.warn.loc,2,5)='WARNING')<--
>
> Does somebody know, how this can be accomplished ?
>
> Thanks for any help!
>
> Regards.
>
>
> DISCLAIMER:
> Unless indicated otherwise, the information contained in this message
> is privileged and confidential, and is intended only for the use of
> the addressee(s) named above and others who have been specifically
> authorized to receive it. If you are not the intended recipient, you
> are hereby notified that any dissemination, distribution or copying of

> this message and/or attachments is strictly prohibited. The company
> accepts no liability for any damage caused by any virus transmitted by

> this email. Furthermore, the company does not warrant a proper and
> complete transmission of this information, nor does it accept
> liability for any delays. If you have received this message in error,
> please contact the sender and delete the message. Thank you.



DISCLAIMER:
Unless indicated otherwise, the information contained in this message is
privileged and confidential, and is intended only for the use of the
addressee(s) named above and others who have been specifically authorized to
receive it. If you are not the intended recipient, you are hereby notified
that any dissemination, distribution or copying of this message and/or
attachments is strictly prohibited. The company accepts no liability for any
damage caused by any virus transmitted by this email. Furthermore, the company
does not warrant a proper and complete transmission of this information, nor
does it accept liability for any delays. If you have received this message in
error, please contact the sender and delete the message. Thank you.

Current Thread