Subject: Re: RE: testing for last node of antecesor
From: CACTUS_JIROPA <CACTUS_JIROPA@xxxxxxxx>
Date: Fri, 11 Jun 2004 18:41:30 +0200
|
Thanks. I doesn't work because I've realized that
must be the last node of 'reg', not 'detalle', because one reg
only contains one detalle, but 'datos' contains several 'reg's
so: <xsl:if test="ancestor::reg/following-sibling::*">
works fine
Only problem now is when this happen on first level of recursion,
because that 'detalle' node isn't into a reg node, but this is always
first and last.
any other idea?
----- Mensaje Original -----
De: "Michael Kay" <mhk@xxxxxxxxx>
Fecha: Viernes, Junio 11, 2004 6:08 pm
Asunto: RE: testing for last node of antecesor
> Try
>
> <xsl:if test="ancestor::detalle/following-sibling::*">
>
> Michael Kay
>
> > -----Original Message-----
> > From: CACTUS_JIROPA [mailto:CACTUS_JIROPA@xxxxxxxx]
> > Sent: 11 June 2004 15:49
> > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> > Subject: testing for last node of antecesor
> >
> > Hello, I have a XML like this:
> >
> > <listado>
> > <report>
> > </report>
> > <pagina>
> > </pagina>
> > <detalle>
> > <resumen>
> > </resumen>
> > <datos>
> > <reg>
> > <campoReg>
> > </campoReg>
> > <detalle>
> > <cabecera>
> > </cabecera>
> > <pie>
> > <campoPie>
> > <nombre>break</nombre>
> > </campoPie>
> > </pie>
> > <resumen>
> > </resumen>
> > <datos>
> > </datos>
> > </detalle>
> > </reg>
> > <reg>
> > <campoReg>
> > </campoReg>
> > <detalle>
> > <cabecera>
> > </cabecera>
> > <pie>
> > <campoPie>
> > <nombre>break</nombre>
> > </campoPie>
> > </pie>
> > <resumen>
> > </resumen>
> > <datos>
> > </datos>
> > </detalle>
> > </reg>
> > </datos>
> > <cabecera>
> > </cabecera>
> > <pie>
> > <campoPie>
> > <nombre>break</nombre>
> > </campoPie>
> > </pie>
> > </detalle>
> > </listado>
> >
> > The problem is than when I evaluate node
> > //detalle/pie/campoPie/nombre,
> > in any of its recursive levels, I want to test if that
> > 'detalle' node (
> > that is always antecesor of 'nombre' ) is the last in his level.
> >
> > In other words, this is the structure of a report, I want to
> > introduce a
> > page break when I find 'break' value in 'nombre' node, but omits
> this> break in the last node.
> > I think I have test:
> >
> > <xsl:if test="ancestor::detalle [position() != last()]">
> >
> > but it always evaluate to true.
> >
> > any ideas?
> >
> > Thank you
> >
> > Sergio Roldan Castillo
> >
> >
> >
> >
> >
> >
> >
> >
> > --+---------------------------------------------------------------
> ---
> > 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@xxxxxxxxxxxxxxxxxxxxxx>
> > --+--
> >
> >
>
>
>
> --+-----------------------------------------------------------------
> -
> 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@xxxxxxxxxxxxxxxxxxxxxx>
> --+--
>
>
|