[Bug 5089] Namespace undeclarations in the query prolog

http://www.w3.org/Bugs/Public/show_bug.cgi?id=5089

           Summary: Namespace undeclarations in the query prolog
           Product: XPath / XQuery / XSLT
           Version: Recommendation
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: normal
          Priority: P2
         Component: XQuery
        AssignedTo: chamberl@almaden.ibm.com
        ReportedBy: mike@saxonica.com
         QAContact: public-qt-comments@w3.org


I can write in the query prolog

declare namespace prefix = "";

and the meaning is given in 4.12: "any existing namespace binding for the given
prefix is removed from the statically known namespaces."

But what does "existing" mean? Is the order of declarations in the prolog
significant? Does

declare namespace prefix = "";
declare namespace prefix = "http://www.w3.org/ns/query";

have a different effect from

declare namespace prefix = "http://www.w3.org/ns/query";
declare namespace prefix = "";

If the namespace declarations are intended to be processed in the order in
which they appear, then this ought to be stated.

Alternatively, we could state that both the above are errors. This could be
achieved by changing the sentence: "The namespace prefix specified in a
namespace declaration must ... not be the same as any namespace prefix bound in
the same module ..." to say "bound or unbound", or words to that effect.
Perhaps this was the intended meaning.

Received on Saturday, 29 September 2007 20:58:03 UTC