<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://www.w3.org/Bugs/Public/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4"
          urlbase="https://www.w3.org/Bugs/Public/"
          
          maintainer="sysbot+bugzilla@w3.org"
>

    <bug>
          <bug_id>3823</bug_id>
          
          <creation_ts>2006-10-13 12:57:58 +0000</creation_ts>
          <short_desc>Static typing of K-StringToCodepointFunc-8</short_desc>
          <delta_ts>2007-01-15 10:55:04 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>XML Query Test Suite</product>
          <component>XML Query Test Suite</component>
          <version>1.0.1</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows XP</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Nick Jones">nick</reporter>
          <assigned_to name="Frans Englich">frans.englich</assigned_to>
          
          
          <qa_contact name="Mailing list for public feedback on specs from XSL and XML Query WGs">public-qt-comments</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>12422</commentid>
    <comment_count>0</comment_count>
    <who name="Nick Jones">nick</who>
    <bug_when>2006-10-13 12:57:58 +0000</bug_when>
    <thetext>This test:

string-to-codepoints(&quot;e&quot;) eq 101

does not static type check as the types are

LHS: interger*
RHS: anyAtomicType?

As has happened with similar cases, could &quot;101&quot; be set as the expected result for the test harness to check, rather than doing such a test in the query.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>12426</commentid>
    <comment_count>1</comment_count>
    <who name="Frans Englich">frans.englich</who>
    <bug_when>2006-10-13 13:29:17 +0000</bug_when>
    <thetext>Yes, that is a good fix to this problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>12430</commentid>
    <comment_count>2</comment_count>
    <who name="David Carlisle">davidc</who>
    <bug_when>2006-10-13 13:57:42 +0000</bug_when>
    <thetext>(In reply to comment #1)
&gt;&gt; for the test harness to check, rather than doing such a test in the query.

&gt; Yes, that is a good fix to this problem.
&gt; 

It avoids the problem, but it does highlight that there is something deeply worrying about the current definition of XQuery if static typing is enabled, that it is so much more convenient to compare two XQuery values for equality -outside- of XQuery, rather than compare them using any expression within the defined XQuery language.

David</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>12431</commentid>
    <comment_count>3</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2006-10-13 14:05:47 +0000</bug_when>
    <thetext>&gt;It avoids the problem, but it does highlight that there is something deeply worrying about the current definition of XQuery if static typing is enabled, that it is so much more convenient to compare two XQuery values for equality
-outside- of XQuery, rather than compare them using any expression within the defined XQuery language.

Well, that&apos;s not quite true. You could compare them using &quot;=&quot;. After all, &quot;eq&quot; was invented largely in order to allow the system to throw static type errors, so people who use it get what they deserve.

I do agree that all these bugs are tending to make me more and more convinced that static typing is a bad idea.

Michael Kay</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>12438</commentid>
    <comment_count>4</comment_count>
    <who name="Frans Englich">frans.englich</who>
    <bug_when>2006-10-13 15:09:49 +0000</bug_when>
    <thetext>Another scary thing is that we previously have had two-three vendors running the test suite with static typing implementations but haven&apos;t reported the ones we&apos;ve received lately(although they have reported on other stuff). That tells a bit about the interoperability of static typing implementations.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>12452</commentid>
    <comment_count>5</comment_count>
    <who name="Andrew Eisenberg">andrew.eisenberg</who>
    <bug_when>2006-10-13 18:51:13 +0000</bug_when>
    <thetext>Comment 1 says:

LHS: interger*
RHS: anyAtomicType?

The RHS is an integer literal, with type xs:integer.

Replacing eq with = is the easy fix for this bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>12457</commentid>
    <comment_count>6</comment_count>
    <who name="Nick Jones">nick</who>
    <bug_when>2006-10-13 23:41:55 +0000</bug_when>
    <thetext>(In reply to comment #5)
Ah, sorry, when I said LHS and RHS what I actually meant was the actual and expected type parameters of the created fs:convert-operand expression.

Replacing eq with =, or moving the check to the test harness both sound equally good to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>13494</commentid>
    <comment_count>7</comment_count>
    <who name="Frans Englich">frans.englich</who>
    <bug_when>2007-01-12 18:52:34 +0000</bug_when>
    <thetext>An attempted fix has been committed to CVS, and should be part of XQTS_current.zip. Feel free to verify that the fix is acceptable, and if so, change status to CLOSED. If the attempted fix is not acceptable, reopen this report.

If no opinion about this resolution is expressed within two weeks, it will be closed.

Along with the fix for this report, was committed fixes for other reports as well. Also, a significant amount of new tests were added to cover missing areas and changes in the specifications.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>