Subject: RE: Equivalence between XSL and XPath expression
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Sat, 11 Dec 2004 00:26:20 -0000
|
> How can the XPath return 0, if has a context node (.) and has
> the self
> axis in ancestor-or-self? This way it has to return at least 1!
I think you are assuming the context node is a menu element. There's no
reason to assume that. If the context node is the root (document) node (for
example) the XPath expression will return 0.
Michael Kay
http://www.saxonica.com/
>
>
> Michael Kay wrote:
>
> >>And the question is: Is this XPath expression
> >>
> >>count(./ancestor-or-self::menu)+count(./preceding::menu)
> >>
> >>equivalent to this XSL expression?
> >>
> >> <xsl:variable name="position">
> >> <xsl:number level='any' count="menu"/>
> >> </xsl:variable>
> >>
> >>
> >>
> >
> >Almost. xsl:number will never return 0, but the XPath
> expression might. Take
> >a look at the XSLT 2.0 spec which defines xsl:number in
> terms of equivalent
> >XPath expressions.
> >
> >Michael Kay
> >http://www.saxonica.com/
|