This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 12738 - [XQuery30] Namespace constructor: error for zero-length URI
Summary: [XQuery30] Namespace constructor: error for zero-length URI
Status: CLOSED FIXED
Alias: None
Product: XPath / XQuery / XSLT
Classification: Unclassified
Component: XQuery 3.0 (show other bugs)
Version: Working drafts
Hardware: PC Windows NT
: P2 normal
Target Milestone: ---
Assignee: Jonathan Robie
QA Contact: Mailing list for public feedback on specs from XSL and XML Query WGs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-05-24 11:55 UTC by Michael Kay
Modified: 2013-06-19 08:22 UTC (History)
1 user (show)

See Also:


Attachments

Description Michael Kay 2011-05-24 11:55:41 UTC
In 3.8.3.7 Computed Namespace Constructors, should add the error condition:

(An error [err:XQDY0101] is raised if a computed namespace constructor attempts to do any of the following:...)

* Bind any prefix (including the empty prefix) to a zero-length namespace URI.

(That is, you can only create namespace bindings, not namespace unbindings.)
Comment 1 Michael Kay 2011-06-07 16:07:11 UTC
In discussion it was noted (a) that the syntax of computed namespace constructors allows the URI part to be omitted, and (b) that there might be a useful semantics for a namespace constructor to generate a "namespace undeclaration" (that is, overriding the normal effect of namespace inheritance). Note that this relates to the XSLT problem in bug #5857.
Comment 2 Jonathan Robie 2011-07-12 17:07:50 UTC
In today's telcon, we agreed to add the requested error.

In addition, we decided that URIExpr in the following production should be required:

[153]    CompNamespaceConstructor    ::=    "namespace" (Prefix | ("{" PrefixExpr "}")) "{" URIExpr? "}"

=>

CompNamespaceConstructor    ::=    "namespace" (Prefix | ("{" PrefixExpr "}")) "{" URIExpr "}"


We will revisit this in future versions of XQuery, to allow namespace undeclarations.