[Bug 4601] [FS] specification of fs:convert-operand() inconsistent

http://www.w3.org/Bugs/Public/show_bug.cgi?id=4601





--- Comment #4 from Michael Dyck <jmdyck@ibiblio.org>  2008-09-02 19:43:10 ---
(In reply to comment #3)
>
> I'm not sure whether the proposed change actually makes things better.
> Note that that very specific sentence is about fs:convert-operand(), not
> the general comparison.
> 
> More specifically, fs:convert-operand() will only cast its first argument
> (if necessary, and as determined by the second argument). Your sentence
> suggests that "either value" is cast to something, which is not what
> fs:convert-operand() does.

Actually, I was trying to make the text *not* be about the inner workings
of fs:convert-operand, just the net result of the two calls to it. That is,
the interpretation I was hoping for was something like:
    The internal function fs:convert-operand is called twice for each pair
    of atomic values, and if either of the two values is of type
    xs:untypedAtomic, one of the calls will cast it to a type determined
    by the other value.

That is, I want the idea of "two values" or "a pair of values" to mean
    the values bound to $v1 and $v2 within any given iteration
    of the inner 'some' expr
and not
    the arguments to any given invocation of fs:convert-operand

But, I agree, I haven't completely achieved that yet. So I think I need to
slightly widen the scope of the change. How about this for the para:

    The normalization rule for a general comparison expression first
    atomizes each argument by applying fn:data, <NEW> resulting in two
    sequences of atomic values. Two nested <code>some</code> expressions
    then examine (potentially) every pair of values (one value from each
    sequence). For each pair, the internal function fs:convert-operand is
    called twice; if either of the two values is of type xs:untypedAtomic,
    one of the calls will cast it to a type determined by the other value.
    </NEW> The overloaded internal function corresponding to the general
    comparison operator is then applied to the two converted values.


-- 
Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

Received on Tuesday, 2 September 2008 19:43:44 UTC