<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>

<!--

Copyright (c) 2001-2004 World Wide Web Consortium, 
(Massachusetts Institute of Technology, Institut National de
Recherche en Informatique et en Automatique, Keio University).  All 
Rights Reserved.  This program is distributed under the W3C's Software
Intellectual Property License.  This program is distributed in the 
hope that it will be useful, but WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
PURPOSE.  

See W3C License http://www.w3.org/Consortium/Legal/ for more details.

-->

<!DOCTYPE test SYSTEM "dom3.dtd">
<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="nodeisequalnode11">
<metadata>
<title>nodeisequalnode11</title>
<creator>IBM</creator>
<description>
	Retreive the first element node whose localName is "p".  Import it into a new
	Document with deep=false.  Using isEqualNode check if the original and the imported
	Element Node are not equal the child nodes are different.
	Import with deep and the should still be unequal if
	validating since the
	new document does not provide the same default attributes.
	Import it into another instance of the source document
	and then the imported node and the source should be equal.   
</description>
<contributor>Neil Delima</contributor>
<date qualifier="created">2002-06-10</date>
<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#Node3-isEqualNode"/>
<subject resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=529"/>
</metadata>
<var name="doc" type="Document"/>
<var name="domImpl" type="DOMImplementation"/>
<var name="employeeList" type="NodeList"/>
<var name="newDoc" type="Document"/>
<var name="dupDoc" type="Document"/>
<var name="elem1" type="Element"/>
<var name="elem2" type="Element"/>
<var name="elem3" type="Element"/>
<var name="elem4" type="Element"/>
<var name="isEqual" type="boolean"/>
<var name="nullDocType" type="DocumentType" isNull="true"/>
<var name="docElem" type="Element"/>
<var name="rootNS" type="DOMString"/>
<var name="rootName" type="DOMString"/>
<load var="doc" href="hc_staff" willBeModified="false"/>
<documentElement var="docElem" obj="doc"/>
<namespaceURI var="rootNS" obj="docElem" interface="Node"/>
<tagName var="rootName" obj="docElem"/>
<implementation var="domImpl" obj="doc"/>
<createDocument  var="newDoc" obj="domImpl" namespaceURI='rootNS' qualifiedName='rootName' doctype="nullDocType"/>
<getElementsByTagName var="employeeList" obj="doc" tagname='"p"' interface="Document"/>
<item var="elem1" obj="employeeList" index="0" interface="NodeList"/>
<importNode var="elem2" obj="newDoc" importedNode="elem1" deep="false"/>
<isEqualNode var="isEqual" obj="elem1" arg="elem2"/>
<assertFalse  actual="isEqual"  id="nodeisequalnodeFalse11"/>
<importNode var="elem3" obj="newDoc" importedNode="elem1" deep="true"/>
<isEqualNode var="isEqual" obj="elem1" arg="elem3"/>
<!--  if validating the nodes should be unequal
          since the new node will not contain
          default attributes.  Unable to make a statement
          when not validating  -->
<if><implementationAttribute name="validating" value="true"/>
<assertFalse  actual="isEqual"  id="deepImportNoDTD"/>
</if>
<load var="dupDoc" href="hc_staff" willBeModified="true"/>
<importNode var="elem4" obj="dupDoc" importedNode="elem1" deep="true"/>
<isEqualNode var="isEqual" obj="elem1" arg="elem4"/>
<assertTrue  actual="isEqual"  id="deepImportSameDTD"/>
</test>
