On Mon, 2017-05-01 at 20:01 +0000, Dimitre Novatchev
dnovatchev(_at_)gmail(_dot_)com wrote:
And here is an XPath 2.0 expression:
[...[
empty(/*/*[not(self::A)][. >> /*/A[1] and /*/A[last()] >> .])
This XPath expression happens to be slightly shorter (by 3
characters)
than the XPath 1.0 expression suggested by Dr. Michael Kay:
not(*[not(self::A)][following-sibling::A][preceding-sibling::A])
On the other hand even experienced APL programmers had difficulty
maintaining their programs at times... :) so I prefer using the named
axes.
The expressions are not exactly equivalent either, in general, if A
elements can occur at multiple places in the document.
--
Liam R. E. Quin <liam(_at_)w3(_dot_)org>
The World Wide Web Consortium (W3C)
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--