[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: XPath to find duplicate elements
Leo, > Dimitre, I am not sure whether I understand your two centsb& > For each node you read, you have to compare all following nodes. How would > you like to do that in the initial reading? The initial loading will not compare any nodes -- it will establish the value that is the same if two elements are deep-equal. This value will be part of the data maintained for every node. Then, whenever deep-equal comparison is needed, only the values stored in the two nodes' data will be compared. Is it clear now? Cheers, Dimitre On Thu, Apr 5, 2018 at 1:13 PM, Leo Studer leo.studer@xxxxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > Dimitre, I am not sure whether I understand your two centsb& > For each node you read, you have to compare all following nodes. How would > you like to do that in the initial reading? > > Yours > Leo > > > On 5 Apr 2018, at 20:15, Dimitre Novatchev dnovatchev@xxxxxxxxx > <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > > Just a thought on this. > > If we can implement deep-equal($n1, $n2) as calculating some > ValueIdentity (VI) for each of the nodes and returning > > VI1 eq VI2 ... > > Then the VIs for each node can be calculated on the initial reading of > the XML document (even in streaming mode) with almost no additional > effort. If these VIs are made properties of the nodes, then we could > just compare the VIs of the nodes and avoid any repeated zip-like > comparison of the subtrees that are topped by these nodes. And this > also seems more declarative/functional. > > Just my 2c. > > Cheers, > Dimitre > > > let $xml := <a> > <b> > <c>1</c> > <d>1</d> > <d>2</d> > </b> > <b> > <c>2</c> > <d>1</d> > <d>3</d> > </b> > <b> > <c>3</c> > <d>2</d> > <d>3</d> > </b> > <b> > <c>3</c> > <d>2</d> > <d>3</d> > </b> > </a> > return > > XSL-List info and archive > EasyUnsubscribe (by email) -- Cheers, Dimitre Novatchev --------------------------------------- Truly great madness cannot be achieved without significant intelligence. --------------------------------------- To invent, you need a good imagination and a pile of junk ------------------------------------- Never fight an inanimate object ------------------------------------- To avoid situations in which you might make mistakes may be the biggest mistake of all ------------------------------------ Quality means doing it right when no one is looking. ------------------------------------- You've achieved success in your field when you don't know whether what you're doing is work or play ------------------------------------- To achieve the impossible dream, try going to sleep. ------------------------------------- Facts do not cease to exist because they are ignored. ------------------------------------- Typing monkeys will write all Shakespeare's works in 200yrs.Will they write all patents, too? :) ------------------------------------- Sanity is madness put to good use. ------------------------------------- I finally figured out the only reason to be alive is to enjoy it.
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|