Re: [xsl] How to put in a variable the text from all elements of an specified type.

Subject: Re: [xsl] How to put in a variable the text from all elements of an specified type.
From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx>
Date: Thu, 21 Oct 2004 23:56:47 +0300
At 2004-09-21 17:16 -0300, IceT wrote:
I want to put in a variable "x" all the content of the "name" elements. The following code didn't do the trick

<xsl:variable name="x" select="//name" />

It just selected the first ocurrence of name. What I want to do is, whenever a registered name is typed in the middle of a sentence, it will be marked as bold (at first, later I will add hyperlinks). So, every word typed will be matched against that list.

Even if it did get all names, they would also be concatenated and you wouldn't determine word boundaries.


How about:

  <xsl:variable name="x-rtf">
    <xsl:for-each select="//name">
      <xsl:value-of select="."/>
      <!--ensure a space between the end of the previous word to the
          start of the next word-->
      <xsl:text> </xsl:text>
    </xsl:for-each>
  </xsl:variable>
  <xsl:variable name="x" select="string($x-rtf)"/>

I hope this helps.

........................ Ken

--
World-wide on-site corporate, govt. & user group XML/XSL training.
G. Ken Holman                 mailto:gkholman@xxxxxxxxxxxxxxxxxxxx
Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/s/
Box 266, Kars, Ontario CANADA K0A-2E0    +1(613)489-0999 (F:-0995)
Male Breast Cancer Awareness  http://www.CraneSoftwrights.com/s/bc
Legal business disclaimers:  http://www.CraneSoftwrights.com/legal

Current Thread