SVGT 1.2: uDOM Node.removeChild more restrictive than DOM Level 3 Core

The removeChild specification for NOT_SUPPORTED_ERR says:

NOT_SUPPORTED_ERR: Raised if this Node is of type Document or if the
child, or any of its descendants, is of a type that cannot be created  
with the
Document method createElementNS.


DOM Level 3 Core says:

NOT_SUPPORTED_ERR: If this node is of type Document, this exception  
might be raised if the DOM implementation doesn't support the removal  
of the DocumentType child or the Element child.

There are two issues here:

1) The exception on removing the root element of a document is made  
mandatory rather than optional as in L3 Core. This would gratuitously  
make some compliant DOM implementations non-compliant with uDOM.

2) It forbids using the uDOM removeChild method for removing non- 
element node types, such as Element, this makes it conflict with the  
DOM removeChild method and so it is impossible to implement but uDOM  
Node and DOM Node interfaces on the same object at the same time.

I recommend removing the differences.

I also recommend quoting verbatim or better yet normatively  
referencing the DOM Level 3 Core removeChild method (there are other  
minor textual differences besides the two things I called out).

Regards,
Maciej

Received on Tuesday, 27 December 2005 05:56:01 UTC