Re: [xsl] Finding list items in XHTML

Subject: Re: [xsl] Finding list items in XHTML
From: David Carlisle <davidc@xxxxxxxxx>
Date: Wed, 13 Nov 2002 10:06:52 GMT

> xsl:template match="p[starts-with(.,'&#10148; ')]">
> <li><xsl:apply-templates /></li>

does it _really_ start with that, for example

<p>
 <span>&#10148;</p>

the first three characters of the string value of p are
&#10; &#32; &#10148; 

p[*[1][self::span][starts-with(.,'&#10148; ')]]

or
p[starts-with(normalize-space(.),'&#10148; ')]

might be more robust.

although the example paras you quoted did start directly with the test
strings, so maybe that isn't your problem.

Otherwise its the namespace faq...

> My input (and output) is essentially XHTML

If your input is n a namespace (in particular if it uses a dtd that
defaults a namespace declaration, as does the xhtml dtd)
then 
p[starts-with(.,'&#10148; ')]

needs to be

h:p[starts-with(.,'&#10148; ')]

where h: is bound in your stylesheet to be whatever namespace you are
using, as a p on its own only matches p in no namespace.

David

_____________________________________________________________________
This message has been checked for all known viruses by Star Internet
delivered through the MessageLabs Virus Scanning Service. For further
information visit http://www.star.net.uk/stats.asp or alternatively call
Star Internet for details on the Virus Scanning Service.

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


Current Thread