Subject: Re: [xsl] How to define a xsl to display such a xml document... From: Jeni Tennison <jeni@xxxxxxxxxxxxxxxx> Date: Wed, 6 Mar 2002 10:14:22 +0000 |
Hi Sjoy, > Here, Group controls several Keyword, and the Members are > corresponded to Keywords attribute id. > > I want to display all members of one group into one td of table. How > can I do that? First, I'd set up a key so that it's easy to retrieve the Keyword with a particular id, from its id: <xsl:key name="keywords" match="Keyword" use="@id" /> With that key defined, you can do: key('keywords', 1) to get all the Keyword elements in the document whose id attribute has the value '1'. Then, for each Group: <xsl:for-each select="content/Groups/Group"> ... </xsl:for-each> You want to create a td: <xsl:for-each select="content/Groups/Group"> <td> ... </td> </xsl:for-each> In which you go through the Member elements one by one: <xsl:for-each select="content/Groups/Group"> <td> <xsl:for-each select="Member"> ... </xsl:for-each> </td> </xsl:for-each> And get the value of the Keyword whose id is equal to the value of the current Member: <xsl:for-each select="content/Groups/Group"> <td> <xsl:for-each select="Member"> <xsl:value-of select="key('keywords', .)" /> </xsl:for-each> </td> </xsl:for-each> You might want to put some extra HTML in there, but I hope that shows the basic method. Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] How to define a xsl to displa, shenjun | Thread | [xsl] search condition, Laura Jenkins |
Re: [xsl] NEWLINES, Jeni Tennison | Date | Re: [xsl] search condition, shenjun |
Month |