[Bug 5857] [XSLT 2.0] A problem with namespace inheritance

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





--- Comment #2 from Michael Kay <mike@saxonica.com>  2009-01-29 16:16:22 ---
I propose the following fix, implementing the suggestion in comment #0.

In 5.7.1 Constructing Complex Content, rule 12, change the rule from

<quote>
If the newly constructed node is an element node, and if namespaces are
inherited, then each namespace node of the newly constructed element (including
any produced as a result of the namespace fixup process) is copied to each
descendant element of the newly constructed element, unless that element or an
intermediate element already has a namespace node with the same name (or
absence of a name) or that descendant element or an intermediate element is in
no namespace and the namespace node has no name.
</quote>

to

<quote>
If the newly constructed node is an element node, then each inheritable
namespace node of the newly constructed element (including any produced as a
result of the namespace fixup process) is copied to each descendant element of
the newly constructed element, unless that element or an intermediate element
already has a namespace node with the same name (or absence of a name) or that
descendant element or an intermediate element is in no namespace and the
namespace node has no name.

A namespace node is inheritable if both of the following conditions hold:

(a) the namespace node is a binding for a non-default namespace

(b) the [xsl-]inherit-namespaces attribute of the containing instruction has
the effective value "yes".
</quote>

I think this will fix the problem, but I think it would be a good idea to test
it before making a final decision. This isn't easy to do in Saxon because the
actual logic implemented in Saxon bears little resemblence to the way it is
described in the spec; but I will do my best.


-- 
Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

Received on Thursday, 29 January 2009 16:16:32 UTC