Subject: RE: [xsl] How Handle Html Heading Tag using XSL From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Tue, 27 Jun 2006 14:20:42 +0100 |
Search for "positional grouping". It's a textbook problem. The answer is easy in XSLT 2.0, using <xsl:for-each-group group-starting-with="h2"/>. It's not at all easy in XSLT 1.0 - most solutions involve recursion over the sequence of siblings. Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Byomkesh [mailto:bkesh@xxxxxxxxxxxxxxx] > Sent: 27 June 2006 13:38 > To: Mukul Gandhi > Cc: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: Re: [xsl] How Handle Html Heading Tag using XSL > > Thank you Mukul for the help! > > I have one problem. How handle the html h1, h2, h3 etc., > coding. I would like to close </h1> tag before start in > another <h1> tag. > > Example... > > Input file > --------- > > <h1>Heading 1</h1> > <p>Some text here</p> > <h2>Heading 2</h2> > <p>Some text here</p> > <h3>Heading 3</h3> > <p>Some text here</p> > <h1>Heading 1</h1> > <p>Some text here</p> > > I want..... > -------- > > <section1> > <title>Heading 1</title> > <p>Some text here</p> > <section2><title>Heading 2</title> > <p>Some text here</p> > <section3><title>Heading 3</title> > <p>Some text here</p> > </section3></section2></section1> > <section1><title>Heading 1</title> > <p>Some text here</p> > ..... > ..... > ..... > > Thanks > > Byomkesh > > > > > ----- Original Message ----- > From: "Mukul Gandhi" <gandhi.mukul@xxxxxxxxx> > To: "Byomkesh" <bkesh@xxxxxxxxxxxxxxx> > Cc: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx> > Sent: Tuesday, June 27, 2006 5:15 PM > Subject: Re: [xsl] How count the Table cell (Cals Table) using XSL > > > > Hi Byomkesh, > > There are some problems in your code. Following corrections are > required: > > > > <xsl:variable name="rtf"> > > <xsl:call-template name="FindMaxStringLength"> > > <xsl:with-param name="n" select="count(//tr[3]/td)" /> > > </xsl:call-template> > > </xsl:variable> > > (in <xsl:template match="table"> ) > > > > and, (please note //. You wrote /) > > > > <xsl:for-each select="//tr[2]/th[$n] | //tr/td[$n]"> > > <xsl:sort select="string-length(.)" order="descending" /> > > <xsl:if test="position() = 1"> > > <xsl:value-of select="string-length(.)" /> > > </xsl:if > > > </xsl:for-each> > > > > With these changes, I get following in the output: > > > > <colgroup> > > <col width="21.74%"/> > > <col width="36.96%"/> > > <col width="41.3%"/> > > </colgroup> > > > > Regards, > > Mukul
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] How Handle Html Heading T, Mukul Gandhi | Thread | Re: [xsl] How Handle Html Heading T, Mukul Gandhi |
RE: [xsl] Accessing parent node con, Michael Kay | Date | Re: [xsl] Problem with str:tokenize, Sanket Pattekar |
Month |