[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: Combine content of separate elements
I'm always confused by the predicate combination and use of the self axis. Thanks. I'll try it out. -----Original Message----- From: Michael Kay [mailto:mike@xxxxxxxxxxxx] Sent: Tuesday, November 14, 2006 5:15 PM To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: RE: Combine content of separate elements What I want to do is combine the > content of a <para> with the next <para2> but only if another > <para> do not occur between the first <para> and <para2>. Sounds like <xsl:template match="para"> <p> <xsl:apply-templates/> <xsl:apply-templates select="following-sibling::*[self::para|self::para2][1][self::para2]"/> </p> </xsl:template> In English: the first following sibling that is a para or para2, provided it is a para2. Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Cutter [mailto:cutter1994@xxxxxxxxx] > Sent: 14 November 2006 21:53 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: Combine content of separate elements > > <para>This is the start of a paragraph. Then a page break > occurs. The paragraph</para> <table id = "2"/> > <pageBreak><num>106</num></pageBreak> > <table id = "3"/> > <pageBreak><num>107</num></pageBreak> > <para2>continues here.</para2> > > I want to combine the content of <para2> with <para>. The > problem is that there can be any type of elements as a > following-sibling between a <para> and a <para2> except > another <para> or <para2>. What I want to do is combine the > content of a <para> with the next <para2> but only if another > <para> do not occur between the first <para> and <para2>. > > Here's what I currently have: > <xsl:if test="following-sibling::pageBreak[following-sibling::para2]"> > <xsl:text> </xsl:text><xsl:apply-templates > select="following-sibling::para2[1]"/> > </xsl:if> > > This outputs with the <para2> content in every <para> that > precedes a <pageBreak>. > > The stylsheet I am using is 2.0 but I haven't figured out > what 2.0 feature will let me do this easily. > > Thanks the help. > > -- > No virus found in this outgoing message. > Checked by AVG Free Edition. > Version: 7.5.430 / Virus Database: 268.14.5/533 - Release > Date: 11/13/2006 > 8:56 PM -- No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.5.430 / Virus Database: 268.14.5/533 - Release Date: 11/13/2006 8:56 PM -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.5.430 / Virus Database: 268.14.5/533 - Release Date: 11/13/2006 8:56 PM
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|