Subject: Re: [xsl] axes in XPath patterns From: "Michael Kay mike@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Wed, 1 Mar 2017 16:42:48 -0000 |
The pattern syntax in XSLT 1.0 and XSLT 2.0, for no good reason at all, allows the "//" pseudo-operator but does not allow *explicit* use of the descendant or descendant-or-self axes. This is fixed in 3.0, which allows all the downward axes to be used. Michael Kay Saxonica > On 1 Mar 2017, at 16:29, Birnbaum, David J djbpitt@xxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > > Dear XSL-list, > > If I9ve understood correctly, the only axes supported in an XPath pattern > in XSLT 2.0 are the child and the attribute axes. For that reason, a > construction like: > > <xsl:template match="paragraph/descendant::inner"> > > should raise an error, as it does in <oXygen/>. But I was surprised to see > that the following construction: > > <xsl:template match="paragraph//inner"> > > does not raise an error in <oXygen/>. According to Michael Kay, p. 627, > paragraph//inner should be equivalent to > paragraph//descendant-or-self::node()/child::inner, so it does appear to > use an axis other than the child or attribute axis. > > I don't know how to reconcile this discrepancy with the general > prohibition against using axes other than child or attribute in an XPath > pattern in XSLT 2.0. Shouldn't both of the patterns above raise the same > type of error? > > > Thanks, > > David
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] axes in XPath patterns, Martin Honnen martin | Thread | [xsl] XSL-List Guidelines, Tommie Usdin btusdin |
Re: [xsl] axes in XPath patterns, Martin Honnen martin | Date | [xsl] XSL-List Guidelines, Tommie Usdin btusdin |
Month |