Subject: Re: [xsl] A grouping question ? From: Richard Lewis <richard.lewis@xxxxxxxxx> Date: Fri, 31 Oct 2003 13:55:49 +0000 |
On Friday 31 Oct 2003 12:34, Emilio Gustavo Ormeño wrote: > Hi, I don't know if this is a grouping question, but given than I don't > know the way to solve it. I need your help. This is my problem: > > I have a XML file such as: > > <Content> > <Paragraph bullet='false'> > <Text txt='Hello World'/> > </Paragraph> > <Paragraph bullet='true'> > <Text txt='First Bulleted Hello World'/> > </Paragraph> > <Paragraph bullet='true'> > <Text txt='Second Bulleted Hello World'/> > </Paragraph> > <Paragraph bullet='false'> > <Text txt='A normal line of text'/> > </Paragraph> > <Paragraph bullet='true'> > <Text txt='Another bulleted line'/> > </Paragraph> > <Paragraph bullet='true'> > <Text txt='A second bulleted line'/> > </Paragraph> > </Content> First, do you really need an element, 'Text' with an attribute, 'txt'? Why not just have <Text>...</Text>? > > And I want an HTML output like the following: > > <html> > <p>Hello World</p> > <ul> > <li>First Bulleted Hello World</li> > <li>Second Bulleted Hello World</li> > </ul> > <p>A normal line of text</p> > <ul> > <li>Another bulleted line</li> > <li>A second bulleted line</li> > </ul> > </html> > Does this mean that you want to format 'Paragraph' elements where @bullet='true' as <li>s and 'Paragraph's where @bullet='false' as <p>s? <xsl:for-each select="para"> <xsl:if test="@bullet = 'true' and preceding-sibling::[1]\@bullet='false'"> <ul> </xsl:if> <xsl:choose> <xsl:when test="@bullet = 'true'"> <li><xsl:value-of select="text" /></li> </xsl:when> <xsl:otherwise> <p><xsl:value-of select="text" /></p> </xsl:otherwise> </xsl:choose> <xsl:if test="@bullet = 'true' and following-sibling::[1]\@bullet='false'"> </ul> </xsl:if> </xsl:for-each> (Not tested!) Cheers, Richard XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] A grouping question ?, Jeni Tennison | Thread | Re: [xsl] A grouping question ?, Richard Lewis |
Re: [xsl] A grouping question ?, Jeni Tennison | Date | RE: [xsl] Select statement within H, SHEIKH Sajjad |
Month |