xsl-list
[Top] [All Lists]

Re: [xsl] Usage of Asterisk in XPath expressions

2019-03-22 08:33:05
On 22.03.2019 13:43, Martin Honnen martin(_dot_)honnen(_at_)gmx(_dot_)de wrote:
On 22.03.2019 12:01, Philipp Nanz philipp(_dot_)nanz(_at_)docufy(_dot_)de wrote:

Suppose this data:

<foo:bar xmlns:foo="http://test/ns/foo"; a="b">Yadda</foo:bar>

Then suppose this stylesheet:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
     xmlns:foo="http://test/ns/foo";
     version="2.0">

     <xsl:template match="foo:bar">
         <xsl:if test="ancestor-or-self::foo*[@a]">

This is
   ancestor-or-self::foo * [@a]
that is ancestor-or-self::foo multiplied with the array [@a], i.e. the
array constructed with the attribute "a", I think.

Not sure what the multiplication with an array should result into, need
to scan the XPath 3.1 spec in some detail.


The multiplication operator atomizes its operand and atomization of an
array gives a sequence of each item in the array atomized.

However, the other main reason that doesn't raise an error is that
ancestor-or-self::foo evaluates to the empty sequence in the context of
that document and that way the multiplication also evaluates to the
empty sequence.
--~----------------------------------------------------------------
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
--~--

<Prev in Thread] Current Thread [Next in Thread>