Re: [dom3core] WRONG_DOCUMENT_ERR

On Dec 2, 2005, at 7:23 AM, Anne van Kesteren wrote:

> That was not the point. There was a point about a percentage of  
> user agents doing it wrong and you said Firefox did it correct (or  
> implied that).

You seemed to claimed that 98-99% of browsers allowed the behavior  
(presumably in all cases or the argument seems moot) or in some other  
way that you failed to mention supported your claim. Again, please  
cite your evidence.  Firefox clearly does not allow free exchange of  
nodes between incompatible documents, and I believe IE also does not.

I never claimed to know that Firefox did it right in all cases, but  
that there were clearly cases presented from Mozilla (and others)  
that needed people to expect an exception there, that inspired the  
DOM authors which included myself and others representing Mozilla to  
ultimately make the exception mandatory and support the result. I  
believe, but am not sure because it has been a long time, that there  
are IE cases as well, as I said before.  Citing Firefox and others  
out to 98-99% as completely supporting your case is not credible to  
me, any more than claiming it does not support ownerDocument.

Nowhere does the Mozilla bug say that the DOM implementation  
shouldn't be fixed, as you suggest it shouldn't.  In fact, they  
simply mention the need to make it throw the exception even in the  
compatible document case (where a comparison of ownerDocument would  
be required). I could not say whether it does right now in various  
cases or not, and you also cannot if you are only interpreting bug  
reports to make claims.  Bugs are often about specific narrow cases,  
as became clear in your other claim. The Mozilla team has generally  
been committed to the standard even if they didn't actually get it  
taken care of in every case, and it would be silly to accuse those  
who wrote the standard of somehow ignoring the needs of browsers on  
the standards committees. Even when you have a standard and are  
committed to it, it takes effort to make the things happen that are  
required to implement it well without harming your implementation.   
This was obviously lower priority for the team.  Throwing the  
exception at the right point requires effort across all DOM  
implementations and it is easy to neglect throwing it when it might  
seem to do no harm with respect to the content, without considering  
the harm in portability of DOM scripts between implementations which  
complied with the standard if there is no hint that the exception  
might be thrown, which is a common neglect of browser writers.

No one who was ever involved in DOM doesn't look back witth regret on  
how any number of issues came out, but they tend to value the  
consensus and implement it in most cases. You have chosen your  
approach with respect to these two more-obscure cases.  There may be  
better approaches, as I suggested, but fine.  You might also complain  
to those who have not correctly implemented the standard in this aspect.

Don't complain if the behavior is more-completely fixed in the future  
in some dominant browser to comply with the standard and it breaks  
your users who you have encouraged in this minor behavior to adopt  
broken javascript.

Ray Whitmer

Received on Friday, 2 December 2005 15:37:02 UTC