[Bug 5915] [FS] rules for XPST0005

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





--- Comment #5 from Tim Mills <tim@cbcl.co.uk>  2008-07-31 08:38:01 ---
(In reply to comment #1)
> > In fs:convert-operand(data(()), 1), fs:convert-operand triggers an XPST005
> > error because it is being applied to data( () ) and not to ().
> 
> I think you're assuming that the static type of
>     fs:convert-operand(data(()), 1)
> is the empty type, but I don't think it is. With respect to FS 7.1.1 / STA,
> Type1 is empty and Type2 is xs:integer. Since
>     empty <: xs:untypedAtomic ?
> and
>     xs:integer <: fs:numeric,
> I believe rule 3 holds, and we infer a type of xs:double?.
> (Mind you, that might be an unintended result.)
> 

Sorry to keep on rambling on here, but doesn't this mean that the rules in C.2
Mapping of Overloaded Internal Functions:

Type1 = empty
-----------------------------------------------
statEnv |-  expanded-QName(Type1,Type2) : empty

Type2 = empty
-----------------------------------------------
statEnv |-  expanded-QName(Type1,Type2) : empty

can never be applied, because the introduction of fs:convert-operand?

I can't believe that FS as it stands can't determine that 1 + () has the empty
type!


-- 
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 Thursday, 31 July 2008 08:38:35 UTC