Subject: RE: testing for last node of antecesor
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Fri, 11 Jun 2004 17:08:23 +0100
|
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>
> --+--
>
>
|