[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: xtvd grouping problem (I think)

Subject: Re: xtvd grouping problem (I think)
From: Steve <subsume@xxxxxxxxx>
Date: Fri, 8 Sep 2006 17:40:53 -0400
Re:  xtvd grouping problem (I think)
Hah. Wouldn't it be easy if we could just push things into keepers
lists? Unfortunately, not in XSL since variables created in a loop
can't exist outside of that loop.

This was a barrier for me. But then I learned about the key() function.

Unfortunately, I'm not the best person on the list to teach such a
thing. I tried to put together something but there are better docs
online.

-S


On 9/8/06, Bob Portnell <simply.bobp@xxxxxxxxx> wrote:
Let me clarify a little. I already have my set of programs in a
variable... call it $hitSet. So that's cool. And the bit from the sort
on down I'd already worked out. Good and good.

I need to get away from any looping based on program IDs. That's my
problem: program IDs are more fine-grained than my search item terms.
So I need to expand up, collecting up all the <schedule>s which have
the program IDs from $hitSet (and so representing each search item
discovery individually)

In pseudocode, my vision is something like
for each member of schedule ( a long list)
    if this member's @program is found among the @ids in (hitSet list)
        push (this member into Keepers list)

But I have no idea if that's possible in XSLT. I have a hunch it is,
and I'm just overlooking a very simple XPath function for the
assignment...

Bob P
simply.bobp@xxxxxxxxx



On 9/8/06, Steve <subsume@xxxxxxxxx> wrote:
> On 9/8/06, Bob Portnell <simply.bobp@xxxxxxxxx> wrote:
> >     for each search item
> >         find the set of programs which have that item
> >         convert this to the set of schedule items which have those programs
> >         for each in the schedule set
> >             sort by time
> >             report the show information.
>
> <xsl:for-each $progSet/items[@item=@search]/@prog>
>      <xsl:variable name="prog" select="@prog" />
>       <xsl:for-each $scheduleSet[@prog = $prog]/@prog>
>         <xsl:sort select="@time" />
>         <xsl:value-of select="@showInfo"
>       </xsl:for-each>
>    </xsl:for-each>
>
>
> > Given a variable $progSet which has a bunch of <programs> in it, how
> > do I define a $schedSet which has only <schedule> items containing
> > @program ids from $progSet?
> >
> > I've gotten as far as
> > <xsl:variable name="schedSet" select="//schedule[@program . . {sound
> > of screeching brakes}? />
>
> Pretty sure I touched on this above. Let me know.
>
> > Please excuse where I've strayed from proper XSLT vocabulary; I hope
> > my intent is clear enough despite such lapses of inexperience.
>
> No problemo. Was very well conveyed. =).
>
> -S

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.