xsl-list
[Top] [All Lists]

RE: [xsl] exslt tokenize mixed content

2006-11-01 09:31:46
Try

<xsl:variable name="spaced-out-nodes">
  <xsl:for-each select=".//text()">
    <xsl:text> </xsl:text>
    <xsl:value-of select="."/>
    <xsl:text> </xsl:text>
  </xsl:for-each>
</xsl:variable>
<xsl:variable name="words" select="str:tokenize($spaced-out-nodes)"/>

Michael Kay
http://www.saxonica.com/ 

-----Original Message-----
From: Richard Lewis [mailto:richardlewis(_at_)fastmail(_dot_)co(_dot_)uk] 
Sent: 01 November 2006 16:06
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] exslt tokenize mixed content

Hi there,

I'm using libxslt's EXSLT implementation's str:tokenize() 
function in an attempt to tokenize all the words inside a 
particular element. What I need to be able to do is to have 
it generate a list of tokens for /all/ the character content 
from inside a mixed content element:

<xsl:template match="section">
  <xsl:variable name="words" select="str:tokenize(string(.))" 
/> </xsl:template>

This almost works except that using string() on a node 
doesn't give you any white space between the last character 
in one subelement and the next character following that 
subelement. e.g.:

<section>
  <title>Section the First</title>
  <p>The content of this section</p>
</section>

calling string on this gives you:
"Section the FirstThe content of this section"

where I need a space between "First" and "The" so that 
str:tokenize() will interpret them as separate tokens.

Any ideas?

Cheers,
Richard
--
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Richard Lewis
Sonic Arts Research Archive
http://www.sara.uea.ac.uk/
JID: ironchicken(_at_)jabber(_dot_)earth(_dot_)li
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>