W3C home > Mailing lists > Public > public-qt-comments@w3.org > April 2009

[Bug 5631] [UPD] rename and namespace inheritance

From: <bugzilla@wiggum.w3.org>
Date: Tue, 28 Apr 2009 10:30:42 +0000
To: public-qt-comments@w3.org
Message-Id: <E1LykaI-00047h-DR@wiggum.w3.org>
http://www.w3.org/Bugs/Public/show_bug.cgi?id=5631





--- Comment #4 from Michael Kay <mike@saxonica.com>  2009-04-28 10:30:42 ---
Yes, the record does seem to be a little bit unsatisfactory here, in that the
proposal uses language that is rather tentative. However, my reading of the
decision is that all parts of the proposal were accepted including the parts
put forward only tentatively. 

Specifically, this means:

(1) In the following places we have to say that certain namespace bindings are
marked for propagation:

The places where namespace bindings are marked for propagation are:

* on upd:insertBefore and upd:insertAfter all the namespace bindings of
parent($target) are marked for propagation

* on upd:insertInto, updInsertIntoAsFirst, and upd:insertIntoAsLast, all the
namespace bindings of $target are marked for propagation

* on upd:insertAttributes, any namespace bindings created in step 3b are
marked for propagation

* on upd:replaceNode, any namespace bindings created in step 4b are marked
for propagation

* on upd:rename, any namespace bindings created in step 1d or 2e is marked
for propagation

(2) We need to add upd:propagateNamespace() as follows:

The actual logic of upd:propagate-namespace($element, $prefix, $uri) is:

For each element $child among the children of $element that does not have a
namespace binding for $prefix, 

(a) add a namespace binding ($prefix, $uri) to $child

(b) call upd:propagate-namespace($child, $prefix, $uri)

(3) We add another parameter to upd:applyUpdates, being the copy mode from the
static context (as with revalidation mode)

(4) after step 5 of upd:applyUpdates(), we add:

5.1 For each namespace binding that is marked for propagation, provided that
copyMode is set to "copy", upd:propagate-namespace($element, $prefix, $uri) is
invoked, where $element is the element node on which the namespace binding
appears, $prefix is the namespace prefix, and $uri is the namespace URI. 

Michael Kay


-- 
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 Tuesday, 28 April 2009 10:30:50 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 16:57:27 UTC