W3C home > Mailing lists > Public > www-dom@w3.org > January to March 1999

RE: Definition of cloneNode method

From: David Beech <DBEECH@us.oracle.com>
Date: Wed, 6 Jan 1999 17:32:04 -0500 (EST)
Message-Id: <199901062231.OAA26655@mailsun3>
To: www-dom@w3.org
Mike Champion wrote: 
 
> You can't count on a DOM implementation doing anything more than  
> what a very literal interpretation of the spec insists that it do,  
> and a literal reading of the spec says that cloneNode() creates an  
> exact duplicate, with all attribute values in the result identical  
> to those in the original, with no special treatment for ID or IDREF  
> attributes. 
 
We obviously want to be able to trust the spec, but does everyone agree  
with previous replies on this thread, which have departed from "a very  
literal reading of the spec" for cloneNode in two ways: 
 
(1) for shallow clone, all the navigational attributes are set to null, 
and not just parentNode as stated.  This would presumably include the 
various Child and Sibling attributes - what about ownerDocument? 
 
(2) for deep clone, the recursive cloning alters all the navigational  
attributes to replicate the original structure in the cloned structure 
(and does not set parentNode to null in the subnodes). 
 
Given this commonsense treatment of deep clone, I have to admit that 
I share Jeff's interest in similar questions about ID and IDREF, e.g.  
where the targets of the IDREFs are local to a subtree being cloned. 
 
 
Thanks, 
 
  David  
  
========================================================================  
David Beech			Oracle Corporation, 500, Oracle Parkway,    
Consulting MTS			M/S 4op8, Redwood Shores, CA 94065   
Server Technology		Phone: (650)506-6420, fax: (650)506-7582 
======================================================================== 
 
DISCLAIMER:  Any statements made in this message are at best my own  
opinions, and are not necessarily endorsed by Oracle Corporation.
Received on Thursday, 7 January 1999 04:50:25 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Friday, 22 June 2012 06:13:46 GMT