This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Re: order of UNIONs


> 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]