Subject: [xsl] A simple solution (Was: Re: One for tomorrow :-) ) From: Dimitre Novatchev <dnovatchev@xxxxxxxxx> Date: Tue, 3 Jul 2001 12:17:19 -0700 (PDT) |
Daniel Newman wrote: > My XML (I know you've all already got it :), is: > > <Item id="2"> > <HIN>G0200328400</HIN> > <PostCode>EC2A 1BR</PostCode> > <NameAddress1>SMITH & WILLIAMSON NOMINEES</NameAddress1> > <NameAddress2>LIMITED <CH>,</NameAddress2> > <NameAddress3>10 ACACIA AVENUE</NameAddress3> > <NameAddress4>HUTTINGDON HILL</NameAddress4> > <NameAddress5>LONDON</NameAddress5> > <NameAddress6/> > <NameAddress7/> > </Item> > > And my problem is, that I want to display NameAddress1, and also need to > concat all following Nodes that end in a comma. So I need to do a: Hi Daniel, Actually, it is quite simple -- do note the XPath expression for all "following Nodes" (in this case following-sibling::*) the text of which ends in a comma -- this uses a combnation of the substring() and string-length() functions. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <xsl:for-each select="/Item/NameAddress1"> <xsl:value-of select="."/> <xsl:for-each select="following-sibling::*[substring(.,string-length(.))=',']"> <xsl:value-of select="."/> </xsl:for-each> </xsl:for-each> </xsl:template> </xsl:stylesheet> Hope this helped. Cheers, Dimitre Novatchev. __________________________________________________ Do You Yahoo!? Get personalized email addresses from Yahoo! Mail http://personal.mail.yahoo.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] XSL + Java extensions + X, Clapham, Paul | Thread | [xsl] RE: A simple solution (Was: R, Daniel Newman |
RE: [xsl] XSL + Java extensions + X, Mattio Valentino | Date | [xsl] XSL based report management, Rick Anderson |
Month |