xsl-list
[Top] [All Lists]

Re: [xsl] is the processing model of XSLT 1.0 bit ambiguous?

2016-10-07 03:21:07
Hi Mike,

On 7 October 2016 at 12:54, Michael Kay mike(_at_)saxonica(_dot_)com <
xsl-list-service(_at_)lists(_dot_)mulberrytech(_dot_)com> wrote:

I'd like to give one example, where I find the processing model of XSLT
1.0 ambiguous and it is a fit case of adoptiong to XSLT 2.0 or 3.0. Lets
say, there are sibling "x" nodes (the number of siblings is greater than
1), and we refer it as /p/x

When we write an experssion /p/x in XSLT 1.0, it may mean various "x"
nodes.

Actually it's an expression whose evaluation returns a node-set.


Thanks for reminding me about this. You're right about the terminology.



But in XSLT 2.0, it doesn't mean like that. To refer to the "x" nodes at
positions 2, 3 .. etc we have another way in 2.0. *In XSLT 2.0, /p/x means
the 1st "x" node*. To refer to all of "x" nodes, we can write in XSLT 2.0
/p/x[position() gt 0].

In XSLT 2.0, /p/x is an expression whose evaluation returns a node
sequence. The semantics are exactly the same as XSLT 1.0 except that
instead of a set of nodes (with no intrinsic order) we have a sequence of
nodes that are guaranteed to be in document order.


I think, in "document order" provided the items in the 2.0 sequence
represent nodes of the XML document. In case, the items of the sequence are
atomic values, then the term "document order" in this context doesn't make
sense, since atomic values have their own order (which is not "document
order").


with best regards,
Mukul gandhi
--~----------------------------------------------------------------
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>