Namespace prefixes for functions and operators considered confusing

The whole "fn: is a function and is mapped to 
|http://www.w3.org/2003/11/xpath-functions| except when you actually use 
it (in which case no prefix is used), and op: looks like a namespace 
prefix but really isn't" is just a mess. It's a symptom of the 
"everything must have a namespace and a URI" disease that has infected 
the W3C for the last few years. Removing the operators namespace URI in 
this draft has just made this more obvious. This whole namespace mess is 
horribly confusing.

Let's face reality: None of the functions or operators are in any 
namespace. The whole idea of putting these in a namespace does not jibe 
with the namespaces spec. Nothing is gained by claiming these functions 
and operators are in a namespace. Talking about the namespace of an 
XQuery function has no more meaning than talking aobut the current king 
of France or the set of triangles with four sides.

The XQuery functions and operators spec will bemuch clearer if it does 
not attempt to place any functions or operators in any namespace. If you 
wish to use the syntax fn: and op: to distinguish functions from 
operators, that's OK. Alternately you could pick a different delimiter 
that does not remind anyone of namespace prefixes. For example, fn# and 
op#. However, fn: and op: should not be namespace prefixes, and in 
reality they never really were.

--
Elliotte Rusty Harold

Received on Saturday, 15 November 2003 15:06:56 UTC