xsl-list
[Top] [All Lists]

RE: Retaining value of a Global variable

2004-07-19 12:17:50
The logic for this is simply to translate your English-language description
into code:

<xsl:variable name="articles" select="article[class='WebCasts']"/>
<xsl:if test="$articles">
  <title>WebCasts</title>
  <xsl:apply-templates select="$articles"/>
</xsl:if>

Here test="$articles" tests to see whether the $articles node-set is
non-empty. You could write it as test="count($articles) != 0", but the
coding idiom used above soon becomes familiar. 

Michael Kay

-----Original Message-----
From: Vivek Shinde [mailto:Vivek(_dot_)Shinde(_at_)sas(_dot_)com] 
Sent: 19 July 2004 19:02
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: RE: [xsl] Retaining value of a Global variable

Hi,
I'll post it soon. I am trying to find simpler solution. 
Michael had suggested position() but since I may have the 
article(s) at any position, that would not work. I am trying 
with xsl:key.

My main problem is:
I have an XML that contains multiple articles for a 
newsletter. There could or could not be some articles with 
article-classification as 'Webcasts'. If I find even a single 
article with classification of 'Webcast', then I want to 
print a title 'Webcasts' and then list all the articles. I 
have done the code for listing the articles. The problem I am 
having is identifying if there's even one article of that 
classification and then print 'Webcast' title only once. 
That's why I was looking to set the global variable and then 
increment it once I hit the first webcast article and then go 
for listing the articles of that type. But it seems that's 
not possible. Therefore I am trying xsl:key. Any other input 
on doing it simpler way?

The XML sample:
<article>
   <class>News</class>
   <teaser>AAAAAAAAAA</teaser>
</article>
<article>
   <class>Webcast</class>
   <teaser>BBBBBBBBBB </teaser>
</article>
<article>
   <class>News</class>
   <teaser>CCCCCCCCCCC </teaser>
</article>
<article>
   <class>Webcast</class>
   <teaser>DDDDDDDD </teaser>
</article>

Thanks
Vivek

-----Original Message-----
From: Wendell Piez [mailto:wapiez(_at_)mulberrytech(_dot_)com] 
Sent: Monday, July 19, 2004 11:05 AM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: Re: [xsl] Retaining value of a Global variable


I'm going to leave this one aside for a bit. Until we hear again from 
Vivek, it's not clear to me that this is -- quite -- a 
standard grouping 
problem, due to the requirement to group according to string 
containment, 
not just string equality.

It'd be much easier if we could see a representative example 
of the input. 
Vivek, could you post a bit of it, along with a restatement 
of what kind of 
output you want for your input? That way it's all in one 
email -- less to 
guess, less confusing to track.

On the other hand, maybe our haphazard comments and hints 
have been enough 
to help Vivek find the solution on his own.

Cheers,
Wendell

At 10:32 AM 7/19/2004, M.David wrote:
After being "woken up" to a fresh breath of "oh my goodness did I 
really
swing and miss before the ball even crossed the plate"....



======================================================================
Wendell Piez                            
mailto:wapiez(_at_)mulberrytech(_dot_)com
Mulberry Technologies, Inc.                http://www.mulberrytech.com
17 West Jefferson Street                    Direct Phone: 301/315-9635
Suite 207                                          Phone: 301/315-9631
Rockville, MD  20850                                 Fax: 301/315-8285
----------------------------------------------------------------------
   Mulberry Technologies: A Consultancy Specializing in SGML 
and XML 
======================================================================


--+------------------------------------------------------------------
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>
--+--


--+------------------------------------------------------------------
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>
--+--




<Prev in Thread] Current Thread [Next in Thread>