This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Counting nodes processed


Joerg,

well, i need to keep up with a running total of the number of topics printed.  Here's some xml and I only want to print a total of 4 topics.

<Category value="category1">
  <topic value="topic1-1"/>
</Category>
<Category value="category2">
  <topic value="topic2-1"/>
  <topic value="topic2-2"/>
</Category>
<Category value="category3">
  <topic value="topic3-1"/>
  <topic value="topic3-2"/>
</Category>

Output should be
Category1
  topic1-1
Category2
  topic2-1
  topic2-2
Category3
  topic3-1

Notice topic3-2 has been eliminated.

I don't want the total to apply per category, I want it to be a sum of all the topics printed.

Jay

-----Original Message-----
From: Joerg Heinicke [mailto:joerg.heinicke@gmx.de]
Sent: Monday, March 04, 2002 10:24 AM
To: xsl-list@lists.mulberrytech.com
Subject: Re: [xsl] Counting nodes processed


Hello Jay,

if you want to process the category nodes, why you go directly to the 
topic nodes?

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

<xsl:template match="category">
	<xsl:value-of select="@value"/>
	<xsl:text>&#10;</xsl:text>
</xsl:template>

<xsl:template match="topic">
	<xsl:text>    </xsl:text>
	<xsl:value-of select="@value"/>
	<xsl:text>&#10;</xsl:text>
</xsl:template>

In general it's bad coding to use //. Try to specify the path more exactly.

Regards,

Joerg

JAY SCHERER wrote:
> excellent...
> 
> now if you can just tell me how I get the category of the topic.
> 
> output would need to be something like
> 
>   Category1
>      topic1
>      topic2
>      topic3
>      topic4
> 
>   Category2
>      topic1
>      topic2
> 
> Do you see where I'm going with this?  Thanks for the help.
> 
> Jay
> 
> -----Original Message-----
> From: cutlass [mailto:cutlass@secure0.com]
> Sent: Monday, March 04, 2002 9:38 AM
> To: xsl-list@lists.mulberrytech.com
> Subject: Re: [xsl] Counting nodes processed
> 
> 
> Hello Jay,
> 
> ----- Original Message -----
> From: "JAY SCHERER" <jay.scherer@adtran.com>
> 
> 
> 
>>I've got a need to limit the amount of ouput generated in a translation.
>>
> Assume the following xml
> 
>><category value="category1">
>>  <topic value="topic1"/>
>>  <topic value="topic2"/>
>>  <topic value="topic3"/>
>></category>
>><category value="category2">
>>  <topic value="topic1"/>
>>  <topic value="topic2"/>
>>  <topic value="topic3"/>
>></category>
>>
>>How would I limit my total number of topics output to say 4 topics?  This
>>
> is straight forward in code, but not sure how to do it xsl?  Basically the
> output would be topic1,2 and 3 from category1 and topic 1 from category 2
> 
> 
> i've done an example in  a procedural style to be clear for you, this is
> just one way of doing this
> 
> xml
> ----------------------------------
> <?xml version="1.0" ?>
> <root>
> 
> <category value="category1">
>   <topic value="topic1"/>
>   <topic value="topic2"/>
>   <topic value="topic3"/>
> </category>
> <category value="category2">
>   <topic value="cattopic1"/>
>   <topic value="cattopic2"/>
>   <topic value="cattopic3"/>
> </category>
> 
> </root>
> 
> xsl
> ---------------------------------
> <?xml version="1.0"?>
> <xsl:stylesheet version="1.0"
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
>  <xsl:template match="/">
> 
> 
>  <xsl:for-each select="//topic">
> 
>  <xsl:if test="position() &lt; 4">
>  <xsl:value-of select="@value"/>
>  </xsl:if>
> 
>  </xsl:for-each>
>  </xsl:template>
> </xsl:stylesheet>
> 
> 
> cheers, jim fuller
> 
> 
>>Thanks,
>>Jay
>>
>>Jay Scherer
>>901 Explorer Blvd
>>Huntsville, AL 35806
>>(256)963-8130
>>Sun Certified Developer For The Java Platform
>>Sun Certified Programmer For The Java Platform
>>Oracle Certified Application Developer
>>
>>
>> XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
>>
>>
> 
> 
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
> 
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
> 
> 
> 


-- 

System Development
VIRBUS AG
Fon  +49(0)341-979-7411
Fax  +49(0)341-979-7409
joerg.heinicke@virbus.de
www.virbus.de


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

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]