Subject: Re: [xsl] without a loop get the element list From: henry human <henry_human@xxxxxxxx> Date: Thu, 14 Aug 2008 08:29:00 +0200 (CEST) |
Thank you. My approach was a little different. In my case i should make case differentiation in output and organize different styles in the resulted tables( with different row and colums styles, etc). How ever your suggestion works properly in many cases. Thanks It was --- Andrew Welch <andrew.j.welch@xxxxxxxxx> schrieb: > > I have following xml and XSL file as bellow. > > An application calls the XSL file and disply the > > nodes > > contents in a windows as a html. > > With a for-each loop i get each node content > > (element) > > more times. For example in this sample xml file > each > > element is displayed three times because there > are 3 > > elements in the xml file and so on. > > I t seems that each time ""for each" elment in > the > > for-each loop, the whole elements are displayed! > > Calling the xml file from web browser the XSL > > Stylesheet works fine and the elemnts are > > displayed only one time as expected. > > I thought to walk throw the 'elements list' > without > > the for-each loop and display the elements but I > > don't know how to do it!!?? > > > > Thank you for your help > > > > ******************************* > > <?xml version="1.0" encoding="iso-8859-1"?> > > <?xml-stylesheet type="text/xsl" href="text-1.xsl" > ?> > > <document> > > <elements> > > <element > type="author">Author-Element</element> > > <element > > type="paragraph">Paragraph-Element</element> > > <element type="title">Title-Element</element> > > </elements> > > </document> > > > > > ***************************************************************** > > <?xml version="1.0" encoding="iso-8859-1"?> > > <xsl:stylesheet version="1.0" > > xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > > <xsl:template match="/"> > > > > <html> > > <body> > > <table > > > > > <xsl:for-each > select="document/elements/element"> > > > > <tr><td> > > <!-- <xsl:value-of > disable-output-escaping="yes" > > select="current()"/> --> > > <xsl:value-of select="."/> > > </td></tr> > > > > </xsl:for-each> > > > > </table> > > > > > > </body> > > </html> > > </xsl:template> > > </xsl:stylesheet> > > > It's hard to tell what you're after, but it looks > like you're trying > to output a table based on that input where > <elements> is a row and > <element> is a cell, so you just want: > > <xsl:template match="/"> > <html> > <body> > <table> > <xsl:apply-templates/> > </table> > </body> > </html> > </xsl:template> > > <xsl:template match="elements"> > <tr> > <xsl:apply-templates/> > </tr> > </xsl:template> > > <xsl:template match="element"> > <td> > <xsl:value-of select="."/> > </td> > </xsl:template> > > > > -- > Andrew Welch > http://andrewjwelch.com > Kernow: http://kernowforsaxon.sf.net/ > > __________________________________________________ Do You Yahoo!? Sie sind Spam leid? Yahoo! Mail verf|gt |ber einen herausragenden Schutz gegen Massenmails. http://mail.yahoo.com
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] without a loop file get t, Andrew Welch | Thread | [xsl] position and loop problem, henry human |
Re: [xsl] Checking external files b, Ganesh Babu N | Date | [xsl] position and loop problem, henry human |
Month |