[XQuery] Namespace for library modules

On an internal list, I raised the following comment:

http://lists.w3.org/Archives/Member/w3c-xml-query-wg/2003Nov/0020.html

<quote>
In section 4.2 of the XQuery language book we say:

The names of all variables and functions declared in a library module
must
be explicitly qualified by the target namespace prefix.[err:XQ0048]

This must be the only place we mandate the use of a specific prefix, as
distinct from a specific URI. Was it intentional? It seems very much
contrary to the intent of QNames and namespaces.

I suggest that this should say:

"The name of every variable and function declared in a library module
must
have a namespace URI that is the same as the target
namespace.[err:XQ0048]"

Practical use case: you might want to cut and paste a set of functions
from
one module into another. Rather than changing the old prefix everywhere
it
appears, you would expect to be able to declare the old prefix to map
onto
the new URI.
</quote>

The WG discussed this comment at a telcon on 2003-12-17 and agreed with
the suggested text. To ensure public visibility, I was given the action
(XQUERY-162-05) to raise this as a public comment.

Michael Kay

Received on Friday, 16 January 2004 17:45:50 UTC