[QT] CER-14 local:

Query Lang [4.12] local:

   "The declared function name in a function declaration must be a QName with a
   non-empty namespace prefix. If the namespace prefix of a declared function
   name is empty, a static error is raised.[err:XQ0045]"  

and

   "It is a static error if the declared name in a function declaration uses
   one of the predefined namespace prefixes other than local.[err:XQ0045]" 

What is the rationale for this restriction on the function _prefix_? Is there a
defined mapping from the prefix "local" in the QName "local:myFcn" to a URI?
If so, what is it? If there is no such mapping, this seems at odds with
recommendations of the web architecture [1]. A constraint on the specific
prefix seems very unsound architecturally.

Why not permit functions in the main module to have no namespace? Why not
permit functions in the main module to use the default function namespace (and
its associated prefix)? 

Suggest:
* Strike the second constraint entirely, and remove the special-casing for
  the prefix 'local'. 
* Either:
     Strike the first constraint entirely.
  or 
     Recast in terms of namespaces (rather than namespace prefixes) and 
     permit function declarations to assume the default function namespace.     

[1] http://www.w3.org/TR/2003/WD-webarch-20031209/

Received on Tuesday, 17 February 2004 11:11:43 UTC