|
Subject: Fwd: Re: Fw: [xsl] Is it possible to reference the previous and next elements inside a for-each From: Ian Lang <ianplang@xxxxxxxxx> Date: Mon, 12 Apr 2004 10:54:03 -0700 (PDT) |
Your solution looked good. I had been using the
for-each because I was redirecting to an index file as
well as generating HTML content for each node. I
switched to for-each for the index file and
apply-templates for generation as you suggested but it
did not work as expected. My navigation bar
generating template was using preceding-sibling and
following-sibling by default already. The problem was
that the next and previous links still referenced
elements that were not part of the apply-template's
select statement. I have a case of nested containment
like this:
<toplevel>
<container name="container1">
<children>
<child name="simple1" type="simple"/>
<child name="complex1" type="complex"/>
<child name="simple2" type="simple"/>
<container name="container2">
<children>
<child name="simple3" type="simple"/>
<child name="simple4" type="simple"/>
<child name="complex2" type="complex"/>
</children>
</container>
</children>
</container>
<toplevel>
In the style sheet I have this to generate content
HTML for all simple child elements:
<xsl:apply-templates mode="createContent"
select="//child[@type='simple']">
<xsl:sort select="@name"/>
</xsl:apply-templates>
But the previous and next links in the gernated HTML
also include the elements of type complex which I do
not want.
Did I missunderstand what you were suggesting?
IL
"Andreas L. Delmelle" <a_l.delmelle@xxxxxxxxxx> wrote
on 2004-04-12 01:17:50:
> > -----Original Message-----
> > From: Ian Lang [mailto:ianplang@xxxxxxxxx]
> >
> >
> > I am working on a navigation bar for my output
> > HTML.
> > When executing a for-each like this:
>
> Hi,
>
> So, in short, the structure looks like:
>
> <xsl:for-each select="x">
> <xsl:sort select="..."/>
> <xsl:apply-templates mode="createContent"
> select=".">
> <xsl:with-param name="prevEl"
> select="..."/>
> <xsl:with-param name="nextEl"
> select="..."/>
> </xsl:apply-templates>
> </xsl:for-each>
>
>
> Remember that if you were to do:
>
> <xsl:apply-templates select="x"
> mode="createContent">
> <xsl:sort select="..." />
> </xsl:apply-templates>
>
> Then in the matching template the requested
> previous and following x are
> available on the preceding and following (-sibling)
> axes, so there is really
> no need to pass these in with parameters
<snip>
__________________________________
Do you Yahoo!?
Yahoo! Tax Center - File online by April 15th
http://taxes.yahoo.com/filing.html
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| RE: [xsl] Comment nodes in XSLT fil, Michael Kay | Thread | [xsl] Newbie question: Incrementing, Durston, Andrew (AGR |
| RE: [xsl] Comment nodes in XSLT fil, M. David Peterson | Date | Re: [xsl] Comment nodes in XSLT fil, Wendell Piez |
| Month |