Subject: Re: [xsl] Problem to compare a value with a set of tag content Part II|
From: Xavier DAMAY <xsl.list@xxxxxxxxxxxxxxx>
Date: Thu, 30 May 2002 10:40:02 +0200
<xsl:for-each select="liste/annonce"> <xsl:variable name="en-pdf"> <xsl:for-each select="../compte/pdf"> <xsl:choose> <xsl:when test=".=../../annonce/@id"> True </xsl:when> <xsl:otherwise> <xsl:value-of select=".=../../annonce/@id"/> </xsl:otherwise> </xsl:choose> </xsl:for-each> </xsl:variable> ...
PS : for memory the structure is <liste> <compte> <pdf>1</pdf> <pdf>3</pdf> </compte> <annonce id ="1"> bla bla </annonce> <annonce id ="2"> bla bla </annonce> <annonce id ="3"> bla bla </annonce> <annonce id ="4"> bla bla </annonce> </liste>
>>of tag content >> > >the content of a tag is the stuff between < and > >If you mean the stuff between <xxx> and </xxx> then that is the content >of the xxx element not the content of a tag. > > >>Question 1 : Are nested for-each statements allowed ? >> > >yes > >But your example appears confused (so i can't tell what you want) > > <xsl:for-each select="annonce"> > so here the current node is an annonce. > <xsl:variable name="en-pdf"> > <xsl:for-each select="compte/pdf"> > so here you are iterating over all pdf children of compute children of > the current element but that is empty as the annonce element does not > have any compte children. You could use /compte/pdf which would select > something but there is no point in nesting such a for-each as it will > re-evaluate the same thing each time for each item in the outer list. > >>Question 2 : >> > >I think you just want something like > > <xsl:for-each select="annonce/id"> > <xsl:variable name="en-pdf" select=".=../../compte/pdf"/> > >which will iterate over the <id> and in each case $en-pdf will be >true() or false() > >David > > >_____________________________________________________________________ >This message has been checked for all known viruses by Star Internet >delivered through the MessageLabs Virus Scanning Service. For further >information visit http://www.star.net.uk/stats.asp or alternatively call >Star Internet for details on the Virus Scanning Service. > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > >