xsl-list
[Top] [All Lists]

Re: [xsl] Context inside brackets

2015-05-21 07:04:25
Jorge . chocolate(_dot_)camera(_at_)gmail(_dot_)com wrote:
Having a sequence stored in a variable, how do I reference the item in
that sequence whose position is the same as the position of the
current node with respect to its context, with XSLT 2?

This does return what I expect:

<xsl:variable name="POSITION" select="position()" as="xs:integer"/>
<xsl:sequence select="$FOO[$POSITION]"/>

but I somehow feel that there must be a way to call the `position()`
of the current node from inside those brackets without the meaning of
the function actually becoming the position of the variable itself
instead of the current node's. Is there?

I don't think so, I think you need the variable.

I am using Saxon-HE 9.2.1.2J on OS X 10.10.3 (14D136).

Using the latest Saxon 9.6 and XSLT 3.0 you could delegate the variable binding to XPath with e.g.

  <xsl:sequence select="let $pos := position() return $FOO[$pos]"/>
--~----------------------------------------------------------------
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>