[Bug 22456] New: [XP 3.0] Non-polymorphic operators

https://www.w3.org/Bugs/Public/show_bug.cgi?id=22456

            Bug ID: 22456
           Summary: [XP 3.0] Non-polymorphic operators
    Classification: Unclassified
           Product: XPath / XQuery / XSLT
           Version: Candidate Recommendation
          Hardware: PC
                OS: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Functions and Operators 3.0
          Assignee: mike@saxonica.com
          Reporter: mike@saxonica.com
        QA Contact: public-qt-comments@w3.org

F+O contains function definitions corresponding to the operators "is", <<, >>,
"union", "except" and "intersect". The operator mapping table also contains
entries for these operators. However, the specification of the constructs that
use these operators (for example NodeComp, UnionExpr) is complete in itself and
makes no reference to the operator mapping table or to the functions in F+O.
There is therefore a lack of clarity as to whether the function specifications
carry any force.

This does not apply to value comparison, general comparison, and arithmetic
operators, where the language specification explicitly appeals to the operator
mapping table and the corresponding functions.

Background: A Saxon user asked why ($N << ()) returns empty, rather than a type
error, given the specification of op:node-before(). F+O claims that
op:node-before defines the semantics of the << operator. I couldn't point to a
chain of argument that shows that op:is-node-before() is relevant to the
semantics of ($A << $B) when both $A and $B are nodes, but is not relevant
where either operand is an empty sequence.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Tuesday, 25 June 2013 15:46:55 UTC