Subject: Re: [xsl] using tokenize() and referencing parent elements From: David Carlisle <davidc@xxxxxxxxx> Date: Thu, 10 May 2007 18:20:56 +0100 |
> have to get the parent of the string token your problem essentially is that atomic values like strings are not in the tree so don't have parents. You want the parent of the node from which you extracted the string, which is $me/.. You don't say what test you want to do so i can't tell you how to change this the current item at this point is a string in the sequence returned by tokenize(). <xsl:when test="$me[current() eq text()/parent::em]"> so $me is the PS element current() is the token (part of the string value of PS) text() is the sequence of text node children of $me (eq will raise an error if there are more than one text node children) text()/parent::* would be the parent of the text node children , which would be $me, but as that is a PS element text()/parent::em is the empty sequence. Oh, I think you just want <xsl:when test=".=$me/em" which tests if the current item (a token) is equal to the string value of any of the em children of the PS element. and to change your token regexp to ignore white space <xsl:for-each select="tokenize(., '[,;]\s*')"> Davd ________________________________________________________________________ The Numerical Algorithms Group Ltd is a company registered in England and Wales with company number 1249803. The registered office is: Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom. This e-mail has been scanned for all viruses by Star. The service is powered by MessageLabs. ________________________________________________________________________
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] using tokenize() and refe, Michael Kay | Thread | Re: [xsl] using tokenize() and refe, Florent Georges |
Re: [xsl] using tokenize() and refe, Spencer Tickner | Date | Re: [xsl] using tokenize() and refe, David Carlisle |
Month |