Subject: Re: [xsl] Using "except" where some nodes are copies (not the original)? From: Dimitre Novatchev <dnovatchev@xxxxxxxxx> Date: Wed, 28 Dec 2011 16:59:55 -0800 |
Perhaps: (A, B, C) [for $n in . return not( ($B, C) [deep-equal(., $n)] ) ] On Wed, Dec 28, 2011 at 3:17 PM, Costello, Roger L. <costello@xxxxxxxxx> wrote: > Hi Folks, > > How do I do set subtraction where some of the nodes in the two sets may be copies (not originals)? > > Please allow me to explain. > > Consider this XML document: > > <Test> > B B <A/> > B B <B/> > B B <C/> > </Test> > > Set <Test> as the context node. > > This operation: > > B B (A, B,, C) except (B, C) > > returns: > > B B (A) > > Nice. > > Now, make a copy of B and store it into a variable: > > B B B <xsl:variable name="B" as="element(B)"> > B B B B B B B B <xsl:copy-of select="B" /> > B B B </xsl:variable> > > Run the same operation, but using the variable: > > B B (A, B, C) except ($B, C) > > Returns: > > B B (A, B) > > Ouch! > > B I don't want that behavior. I want: > > B B (A, B, C) except ($B, C) > > to return: > > B B (A) > > How do I achieve the behavior I desire? > > That is, how do I do set subtraction where some of the nodes in the two sets may be copies? > > /Roger > -- 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 ------------------------------------- Facts do not cease to exist because they are ignored. ------------------------------------- I finally figured out the only reason to be alive is to enjoy it.
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Using "except" where some nod, Costello, Roger L. | Thread | Re: [xsl] Using "except" where some, Dimitre Novatchev |
[xsl] Using "except" where some nod, Costello, Roger L. | Date | Re: [xsl] Using "except" where some, Dimitre Novatchev |
Month |