You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by bu...@apache.org on 2003/08/08 01:10:50 UTC

DO NOT REPLY [Bug 22232] New: - Un-prefixed attributes are incorrectly put in the default namespace.

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=22232>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=22232

Un-prefixed attributes are incorrectly put in the default namespace.

           Summary: Un-prefixed attributes are incorrectly put in the
                    default namespace.
           Product: XalanC
           Version: 1.6
          Platform: All
               URL: http://www.w3.org/TR/REC-xml-names/#scoping-defaulting
        OS/Version: All
            Status: NEW
          Severity: Major
          Priority: Other
         Component: XalanC
        AssignedTo: xalan-dev@xml.apache.org
        ReportedBy: dan@dansmart.com


When transforming to a DOM, attributes with no prefix are assigned the URI of 
the default namespace. Section 5.2 of http://www.w3.org/TR/REC-xml-
names/#scoping-defaulting states:
A default namespace is considered to apply to the element where it is declared 
(if that element has no namespace prefix), and to all elements with no prefix 
within the content of that element. .... Note that default namespaces do not 
apply directly to attributes.

Modifying the four argument variant of "DOMServices::getNamespaceForPrefix" @ 
line 806 so that it reads:
if (theColonIndex == theLength)
{
	clear(thePrefix);
	if (isAttribute == true)
	{
		return 0;
	}
	else
	{
		return thePrefixResolver.getNamespaceForPrefix(s_emptyString);
	}
}
fixes the problem for me.

Dan