This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: Checking the text nodes just preceding the context


Well that seems to have worked exactly as I'd hoped (once I took out the
debug code that was REALLY messing with my mind.). 

Thanks. 

> -----Original Message-----
> From: Jarno.Elovirta@nokia.com [mailto:Jarno.Elovirta@nokia.com]
> Sent: Wednesday, September 26, 2001 9:00 PM
> To: xsl-list@lists.mulberrytech.com
> Subject: RE: [xsl] Checking the text nodes just preceding the context
> 
> 
> Hip hei!
> 
> [...]
> > Now I can guarantee that <foo> will be child of <p> but 
> nothing else. 
> > 
> > Any ideas how to do this?
> 
> I don't undestand that quarentee part of your question, but this
> 
> <?xml version="1.0" encoding="ISO-8859-1"?> 
> <xsl:stylesheet version="1.0"
>                 xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
> 
> <xsl:template match="@*|node()">
>   <xsl:copy>
>     <xsl:apply-templates select="@*|node()"/>
>   </xsl:copy>
> </xsl:template>
> 
> <xsl:template match="foo">
>   <xsl:variable name="text"
> select="normalize-space(preceding::text()[normalize-space() 
> != ''][1])" />
>   <xsl:choose>
>     <xsl:when test="substring($text, string-length($text)) =
> '.'">Foo</xsl:when>
>     <xsl:otherwise>foo</xsl:otherwise>
>   </xsl:choose>
> </xsl:template>
> 
> </xsl:stylesheet>
> 
> will do the capitalization - just retrive the first preceding 
> text node that
> is not whitespace, normalize that, and then test if the last 
> character is a
> period. Hope this helps,
> 
> Jarno
> 
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
> 

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]