Hi Wendell,
Not foolproof, but
match="text()[starts-with(ancestor::p,.)]"
would usually work (and would most probably perform better).
So today's XSLT Challenge is to write a better match for this problem.
This is a nice match pattern, but I think it must be:
text()[starts-with(ancestor::p[1],.)]
Also, evaluating it might be somewhat inefficient in cases when a "p" has
many text-node descendents.
Due to this consideration I would propose:
text()[generate-id()
=
generate-id(ancestor::p[1]/descendant::text()[1])
]
Of course, for this to work whitespace-only nodes must be stripped by a
<xsl:strip-space elements="*"/>
=====
Cheers,
Dimitre Novatchev.
http://fxsl.sourceforge.net/ -- the home of FXSL
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list