This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: Re: order of UNIONs
- From: Dimitre Novatchev <dnovatchev at yahoo dot com>
- To: xsl-list at lists dot mulberrytech dot com
- Date: Wed, 14 Nov 2001 21:43:00 -0800 (PST)
- Subject: [xsl] Re: Re: order of UNIONs
- Reply-to: xsl-list at lists dot mulberrytech dot com
> But does this really make sense? select="group[21]|group[1]" means for me
> 'select the 21st group and add the 1st group'.
It makes ***perfect sense***. Node-sets are sets. Sets do not have order. Regardless
of the order, in which you add elements, the result is the same set:
a | b = b | a
The above is an axiom in set theory.
What you actually need is kinda bag, or list -- these are very different structures
from sets. Both allow duplicates, and a list has order.
I think one of the major problem of the XPath 2.0 Data Model is that they do not
distinguish between lists and sets, trying somehow to say that a node-set is a kind
of list (the actual term used there was "sequence", if I remember well). The
consequences are bad problems, because some operations on lists cannot be performed
1:1 on sets, and vice versa -- not every list is a set, an operation performed on a
sequence, that is a nodeset, may not yield a nodeset, a nodeset operation performed
on a sequence that is a nodeset, may behave quite differently from the same
operation, performed on a sequence (e.g. eliminating/preserving duplicates on a
union/append operation).
Cheers,
Dimitre Novatchev.
__________________________________________________
Do You Yahoo!?
Find the one for you at Yahoo! Personals
http://personals.yahoo.com
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list