[Bug 15687] New: [XQ30] Annotations and XQST0045

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

           Summary: [XQ30] Annotations and XQST0045
           Product: XPath / XQuery / XSLT
           Version: Member-only Editors Drafts
          Platform: PC
        OS/Version: Windows NT
            Status: NEW
          Severity: normal
          Priority: P2
         Component: XQuery 3.0
        AssignedTo: jonathan.robie@gmail.com
        ReportedBy: tim@cbcl.co.uk
         QAContact: public-qt-comments@w3.org


XQuery 3.0 states in 4.15 Annotations:

"Implementations MAY define further annotations, whose behaviour is
implementation-defined. For instance, if the eg prefix is bound to a namespace
associated with a particular implementation, it could define an annotation like
eg:sequential. Implementations MUST NOT define annotations in the following
reserved namespaces; it is an error for users to create annotations in the
following reserved namespaces [err:XQST0045]:

    http://www.w3.org/XML/1998/namespace
    http://www.w3.org/2001/XMLSchema
    http://www.w3.org/2001/XMLSchema-instance
    http://www.w3.org/2005/xpath-functions
    http://www.w3.org/2005/xpath-functions/math
    http://www.w3.org/2011/xquery-options"

This isn't entirely the same as the later appendix definition of the error
code, which seems to be at odds with the definition of %fn:private or
%fn:public which are in http://www.w3.org/2005/xpath-functions.

err:XQST0045

    It is a static error if the name of an annotation or the function name in a
function declaration is in one of the following namespaces:
http://www.w3.org/XML/1998/namespace, http://www.w3.org/2001/XMLSchema,
http://www.w3.org/2001/XMLSchema-instance,
http://www.w3.org/2005/xpath-functions,
http://www.w3.org/2005/xpath-functions/math,
http://www.w3.org/2011/xquery-options.

Whether these two agree hinges on whether "creating an annotation" is the same
as using an annotation.  The definition is also ambiguous: does it mean 

the name of an annotation in a function declaratio or
the function name in a function declaratio

or

the name of an annotation in a function declaratio or function test or
the function name in a function declaratio

?

So I'm not clear whether the following (from QT3 test annotation-2) should
expect XQST0045 (since it uses, but doesn't define an annotation is a reserved
namespace).

 declare %fn:x function local:foo() {
            "bar"
         };

Similarly, I'm not clear whether the following (from QT£ test
annotation-assertion-16) should expect XQST0045.

  () instance of %fn:x function(*)

-- 
Configure bugmail: https://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, 24 January 2012 10:19:16 UTC