[Bug 26916] [F+O 3.1] Spurious rule about QName constructor requiring a literal

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

--- Comment #1 from Michael Kay <mike@saxonica.com> ---
Fortunately there are not many affected sections. Here is a complete list.

(1) from xpath-functions.xml

<?xml version="1.0" encoding="UTF-8"?>
<diffs>
   <diff section="func-signatures">
      <p xmlns:e="http://www.w3.org/1999/XSL/Spec/ElementSyntax"
         diff="del"
         at="F">In some cases, the static type returned by a function depends
on the type(s) of
                    its argument(s). These special functions are indicated by
using <emph>
                        <term>bold italics</term>
                    </emph> for the return type. The semantic rules specifying
the type of the value
                    returned are documented in the function definition. The
rules are described more
                    formally in [the Formal Semantics].</p>
   </diff>
   <diff section="datatypes">
      <p xmlns:e="http://www.w3.org/1999/XSL/Spec/ElementSyntax"
         diff="del"
         at="M">When XSD 1.1 is supported, one additional type needs to be
added to these
            diagrams: the type <code>xs:dateTimeStamp</code>, which is derived
from <code>xs:dateTime</code>.</p>
   </diff>
   <diff section="errors">
      <phrase xmlns:e="http://www.w3.org/1999/XSL/Spec/ElementSyntax"
              diff="del"
              at="F"> and [Formal Semantics]</phrase>
   </diff>
   <diff section="analysing-picture-string">
      <phrase xmlns:e="http://www.w3.org/1999/XSL/Spec/ElementSyntax"
              diff="del"
              at="M">the fractional part of</phrase>
   </diff>
   <diff section="constructor-qname-notation">
      <p xmlns:e="http://www.w3.org/1999/XSL/Spec/ElementSyntax"
         diff="del"
         at="F">
      Conversion from an <code>xs:string</code> to a value of type
<code>xs:QName</code>, a type derived from  <code>xs:QName</code> 
      or a type derived from <code>xs:NOTATION</code> is permitted only if the
<code>xs:string</code> is written as a string literal. 
      This applies whether the conversion is expressed using a constructor
function or using the "cast as" syntax. Such a conversion can be regarded as a
pseudo-function, which is always evaluated statically. It is also permitted for
these constructors and casts to take a dynamically-supplied argument in the
normal manner, but as the casting table (see <specref
ref="casting-from-primitive-to-primitive"/>) indicates, the only
      arguments that are supported in this case are values of type
<code>xs:QName</code> or <code>xs:NOTATION</code> respectively.</p>
   </diff>
   <diff section="casting-from-primitive-to-primitive">
      <phrase xmlns:e="http://www.w3.org/1999/XSL/Spec/ElementSyntax"
              diff="del"
              at="L">Casting to a type that is not 
                  atomic raises <phrase diff="add" at="M">a static
error</phrase>: <xerrorref spec="XP" class="ST" code="0051"
type="type"/>.</phrase>
   </diff>
</diffs>

(2) from function-catalog.xml

<?xml version="1.0" encoding="UTF-8"?>
<diffs>
   <diff section="abs">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="ceiling">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="floor">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="round">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="round-half-to-even">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="format-integer">
      <phrase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
              diff="del"
              at="K">any</phrase>
   </diff>
   <diff section="normalize-unicode">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="D">See <bibref ref="charmod-normalization"/> for a description of
the
            normalization forms.</p>
   </diff>
   <diff section="boolean">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">The static semantics of this function are described in [Formal
            Semantics].</p>
   </diff>
   <diff section="QName">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">Note that unlike the <code>xs:QName</code> constructor, this
function
            does not require a string literal as the argument.</p>
   </diff>
   <diff section="number">
      <phrase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
              diff="del"
              at="L">or the context item</phrase>
   </diff>
   <diff section="number">
      <phrase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
              diff="del"
              at="L">, or the context item after atomization,</phrase>
   </diff>
   <diff section="concatenate">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="distinct-values">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">The static type of the result is a sequence of prime types as
defined
            in [Formal Semantics].</p>
   </diff>
   <diff section="insert-before">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="remove">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="reverse">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="subsequence">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="zero-or-one">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="one-or-more">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="exactly-one">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="deep-equal">
      <phrase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
              diff="del"
              at="A-E42"> or namespace bindings</phrase>
   </diff>
   <diff section="union">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="intersect">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="except">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="avg">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="max">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="min">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="sum">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="doc">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="collection">
      <p xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
         diff="del"
         at="F">For detailed type semantics, see [Formal Semantics].</p>
   </diff>
   <diff section="unparsed-text-available">
      <phrase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xmlns:fos="http://www.w3.org/xpath-functions/spec/namespace"
              diff="del"
              at="L">If the second
            argument is an empty sequence, the function behaves as if the
second argument were
            omitted.</phrase>
   </diff>
</diffs>

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

Received on Saturday, 27 September 2014 23:43:08 UTC