Subject: Re: [xsl] Getting Unexpected Results from .//* = $set-of-elements From: "Eliot Kimber ekimber@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Sat, 24 Feb 2018 20:17:20 -0000 |
So my misunderstanding of "=" is that it is comparing values, not nodes--I clearly never understood that properly. That then explains why an empty element would produce the results I was seeing: "" is equal to any other empty node. Doh! I will try Mike's intersection expression. Cheers W. -- Eliot Kimber http://contrext.com o;?On 2/23/18, 6:39 PM, "Michael Kay mike@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > On 24 Feb 2018, at 00:18, G. Ken Holman g.ken.holman@xxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > > Ignore that second expression ... I wrote it too hastily and I'm now back at my desk to think about it. > > This would work I think: > > <xsl:value-of select="some $this in .//* satisfies > some $that in $elements-to-keep > satisfies $this is $that"/> > I think that's equivalent to saying that the intersection of the two sets is non empty: select="exists(.//* intersect $elements-to-keep)" Michael Kay Saxonica
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Getting Unexpected Result, Michael Kay mike@xxx | Thread | Re: [xsl] Getting Unexpected Result, Michael Kay mike@xxx |
Re: [xsl] Getting Unexpected Result, Michael Kay mike@xxx | Date | Re: [xsl] Getting Unexpected Result, Michael Kay mike@xxx |
Month |