Just my guess ;) Thanks, Bridger. Here are some general comparisons
with their correct results:

 () = () : false
 () != () : false
 (1,2) = (2,3) : true
 (1,2) != (2,3) : true
 (1) > (10,20,30,40,0) : true
 (5) < (1,2,3,4) : false


On Tue, Mar 26, 2019 at 1:58 PM Bridger Dyson-Smith
<bdysonsm...@gmail.com> wrote:
>
> Chris -
> thanks for sharing your solution (IMO it will help future searchers/readers 
> of the list, or others with similar problems searching the list archive)!
>
> Note that the `!=` is an existential quantifier in XPath; i.e. it returns 
> `true` if *any* value on the left is not equal to *any* value of the right*. 
> So you might have had an expression problem earlier.
>
> Cheers,
> Bridger
> * -- I totally and completely cribbed that note from Mr. Liam Quin, who is 
> often giving away advice like that on the xml freenode IRC channel. Credit to 
> him :).
>
> On Tue, Mar 26, 2019 at 8:48 AM Christopher Yocum <cyo...@gmail.com> wrote:
>>
>> Hi Bridger,
>>
>> The solution was indeed using is-value-in-sequence:
>>
>> import module namespace functx = 'http://www.functx.com';
>> let $biblFull := distinct-values(collection('edil/Prologue Merged
>> 2013.xml')//biblFull/@id)
>> let $biblStruct := distinct-values(collection('edil/Prologue Merged
>> 2013.xml')//biblStruct/@id)
>> let $bibl := distinct-values(collection('edil/Prologue Merged
>> 2013.xml')//bibl/@id)
>> for $title in collection('edil/eDIL-A.xml')//entry//title
>> where not(functx:is-value-in-sequence($title/@target, $biblFull))
>> and not(functx:is-value-in-sequence($title/@target, $biblStruct))
>> and not(functx:is-value-in-sequence($title/@target, $bibl))
>> return $title
>>
>> It is also pretty speedy as well.
>>
>> All the best,
>> Chris
>>
>> On Tue, Mar 26, 2019 at 12:47 PM Bridger Dyson-Smith
>> <bdysonsm...@gmail.com> wrote:
>> >
>> > Chris,
>> >
>> > please don't leave us hanging :). What was your solution?
>> >
>> > Best,
>> > Bridger
>> >
>> > On Tue, Mar 26, 2019 at 8:40 AM Christopher Yocum <cyo...@gmail.com> wrote:
>> >>
>> >> Hi,
>> >>
>> >> Of course the instant you say that, you fix it.  Thanks for everyone's 
>> >> support.
>> >>
>> >> All the best,
>> >> Chris
>> >>
>> >> On Tue, Mar 26, 2019 at 12:35 PM Christopher Yocum <cyo...@gmail.com> 
>> >> wrote:
>> >> >
>> >> > Hi Everyone,
>> >> >
>> >> > I just tried using functx:is-value-in-sequence: where
>> >> > not(functx:is-value-in-sequence($title/@id, $biblFull)).  I am still
>> >> > getting erroneous results.  At this point, I very near offering money
>> >> > for someone to help me fix this.  It looks like a bug though to me.  I
>> >> > should not be getting the results that I am.
>> >> >
>> >> > All the best,
>> >> > Chris
>> >> >
>> >> > On Tue, Mar 26, 2019 at 12:13 PM Christopher Yocum <cyo...@gmail.com> 
>> >> > wrote:
>> >> > >
>> >> > > Hi,
>> >> > >
>> >> > > > If you are allowed to share some snippets of the actual documents, 
>> >> > > > it
>> >> > > > will be easier to see how the query needs to be phrased.
>> >> > > >
>> >> > >
>> >> > > Sadly, probably not.  I can probably do something off list but even
>> >> > > then I would hesitate.
>> >> > >
>> >> > > I tried your proposal from your other email and I am getting the same
>> >> > > results as with all other attempts.  I feel like this should be very
>> >> > > straightforward and I am just missing something small.
>> >> > >
>> >> > > > Have you verified that $biblFull and $biblStruct actually contain
>> >> > > > strings? If not, do you need to declare a default namespace? The
>> >> > > > vocabulary looks like TEI, so
>> >> > > >
>> >> > > > declare default element namespace "http://www.tei-c.org/ns/1.0";;
>> >> > > >
>> >> > >
>> >> > > It is TEI-like.  It is not exactly TEI and I very much doubt it would 
>> >> > > validate.
>> >> > >
>> >> > > > may be necessary. And if it is TEI, the ID attributes are probably
>> >> > > > called @xml:id rather than @id.
>> >> > > >
>> >> > >
>> >> > > No, the XML documents are explicit about the @id as I checked.
>> >> > >
>> >> > > Thank you for your help.
>> >> > >
>> >> > > All the best,
>> >> > > Chris

Reply via email to