W3C home > Mailing lists > Public > public-qt-comments@w3.org > June 2015

[Bug 28811] New: [SER 3.1] Serializing function items in the adaptive method

From: <bugzilla@jessica.w3.org>
Date: Mon, 15 Jun 2015 09:12:25 +0000
To: public-qt-comments@w3.org
Message-ID: <bug-28811-523@http.www.w3.org/Bugs/Public/>
https://www.w3.org/Bugs/Public/show_bug.cgi?id=28811

            Bug ID: 28811
           Summary: [SER 3.1] Serializing function items in the adaptive
                    method
           Product: XPath / XQuery / XSLT
           Version: Last Call drafts
          Hardware: PC
                OS: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Serialization 3.1
          Assignee: cmsmcq@blackmesatech.com
          Reporter: mike@saxonica.com
        QA Contact: public-qt-comments@w3.org

It's not clear in the adaptive method how the QName of a function is to be
handled. The text says

A function item is serialized to the representation "function fn:name#A" where
fn:name is the function name and A is the arity. If the function is anonymous,
fn:name is replaced by the string "(anonymous)".
Note:
The following examples illustrate this rule:
exists#1 is serialized as function exists#1
fn:exists#1 is serialized as function fn:exists#1
Q{http://www.w3.org/2005/xpath-functions}exists#1 is serialized as function
exists#1

Now, "fn:name" suggests using a lexical QName. But the examples then confuse
this. What is "exists#1"? If we assume the default namespace for functions,
it's the same thing as "fn:exists#1". The system can't be expected to remember
how the QName was originally written.

I suggest:

A function item is serialized to the representation "function name#A" where
name is a representation of the function name and A is the arity. If the
function name is in one of the namespaces (...) then the name is output as a
lexical QName using the conventional prefix "fn", "math", "map", "array", or
"xs" as appropriate; if it is in any other namespace or in no namespace, then
the name is output as a URI-qualified name (that is, "Q{uri}local"). If the
function is anonymous, name is replaced by the string "(anonymous)".

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
Received on Monday, 15 June 2015 09:12:27 UTC

This archive was generated by hypermail 2.3.1 : Monday, 15 June 2015 09:12:28 UTC