Subject: RE: [xsl] value-of node test. From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Mon, 10 Jul 2006 21:28:36 +0100 |
If you're using predicates, remember that the context node changes inside the predicate. Use current() to get around this: for-each B value-of select="//A[@attribute-of-A = current()/@attribute-of-B] However, using keys is easier and more efficient: <xsl-key name="k" match="A" use="@attribute-of-A"/> <xsl:for-each select="B"> <xsl:value-of select="key('k', @attribute-of-B)" Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Steve [mailto:subsume@xxxxxxxxx] > Sent: 10 July 2006 20:13 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] value-of node test. > > I'm iterating thu an ordered list of services. > > I have another list of the values of those services, but not in order. > > As I move thru the ordered list, I'd like to get the value of > the unordered list which shares meets the service=@title test. > > Is there a shorthand way to do this using value-of? I know I > can resort to xsl:when or xsl:if, if need be. > > General gist (doesn't work): > > <xsl:value-of > select="$services//Record[child::service=string(@title)]/value" />
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] value-of node test., Wendell Piez | Thread | [xsl] one function call twice for t, Renate |
Re: [xsl] value-of node test., Wendell Piez | Date | Re: [xsl] Obtaining Graphic File W, Wendell Piez |
Month |