Re: [xsl] Where is 'intersect' Operator Defined in XPath 3?

Subject: Re: [xsl] Where is 'intersect' Operator Defined in XPath 3?
From: "Michael Kay mike@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Mon, 8 Aug 2022 22:53:37 -0000
> Union, intersection, and set difference on node sequences are not
> covered in the F&O spec; unless I have overlooked them, neither are "to"
> (as in "1 to 100"), "and", "or", "not", "if" ... "then" ... "else",
> "instance of", "treat as", "castable as", "cast as".

Similarly "/", "!", "?", "[".."]", "=>", "is", "<<", ">>", ",", "||". And the
general comparison operators are defined in the XPath spec by reference to
primitives defined in F&O.

In fact at 3.1 the only operators defined in F&O are the arithmetic and value
comparison operators, and I think the reason for this was indeed division of
editorial labour rather than convenience for the reader. The WGs always
recognized that this was less than satisfactory, but failed the find the
energy to perform the major refactoring needed to improve matters.

There was some tidying up between 3,0 and 3.1. In 2.0 and 3.0 some operators
such as union, intersect, except, "<<", ">>" were defined in both
specifications, and there was nothing to say which was normative. It was felt
that the simplest solution to the duplication was to remove the operators from
F&O, which had the effect that the syntax and semantic rules could be found in
the same place.

Michael Kay
Saxonica
>
> These are all keywords in XPath and must be (and are) defined in the
> XPath spec.
>
> Perhaps some illogicality arose in the division of labor made when the
> detailed documentation of the function library was split off from the
> XPath spec into a separate document.  Or perhaps there is a definition
> of "operator" somewhere that explains all.
>
> In either case, it doesn't seem quite as accidental as Mike Kay's
> self-depreciating account might suggest.
>
> Michael Sperberg-McQueen
>
>
>
>
>> On Mon, Aug 8, 2022 at 10:14 AM Michael Kay mike@xxxxxxxxxxxx
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
>>
>> I'm afraid the distribution of text between the various specs often owes
more to the question of who stepped up to do the editorial work than to any
top-down design of the document suite.
>>
>> Michael Kay
>> Saxonica
>>
>>> On 8 Aug 2022, at 16:54, Norm Tovey-Walsh ndw@xxxxxxxxxx
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
>>>
>>> "Eliot Kimber eliot.kimber@xxxxxxxxxxxxxx"
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> writes:
>>>> I was looking in the XPath 3.1 functions and operators docbso I think
>>>> my question still standsbwhy do I not find a definition of the
>>>> intersect operator in the Functions and Operators spec?
>>>
>>> I donbt know if therebs a good editorial reason, or if itbs simply
a
>>> matter of oversight. I donbt think it would have been unreasonable to
>>> expect an bop:intersectb function described in F&O with a pointer
from
>>> the bintersectb operator in XPath to that function. But thatbs not
the
>>> way the XPath spec got written. B/\_(c)_/B/
>>>
>>>> And also why does a google search not find the entry in the XPath
>>>> spec?
>>>
>>> According to a bit of spam that drifted past me today, Google/Alphabet
>>> are engaged in a broad program of mind control over the entire human
>>> race. Perhaps theybre distracted a bit from the search engine business.
>>>
>>>                                       Be seeing you,
>>>                                         norm
>>>
>>> --
>>> Norman Tovey-Walsh <ndw@xxxxxxxxxx>
>>> https://nwalsh.com/
>>>
>>>> Because things are the way they are, things will not stay the way they
>>>> are.--Bertolt Brecht
>>>
>
>
> --
> C. M. Sperberg-McQueen
> Black Mesa Technologies LLC
> http://blackmesatech.com

Current Thread